-1
Bundle ownedItems = mService.getPurchases(3, getPackageName(), "subs", null);
int response = ownedItems.getInt("RESPONSE_CODE");
if (response == 0) {
ArrayList<String> ownedSkus =
ownedItems.getStringArrayList("INAPP_PURCHASE_ITEM_LIST");
ArrayList<String> purchaseDataList =
ownedItems.getStringArrayList("INAPP_PURCHASE_DATA_LIST");
ArrayList<String> signatureList =
ownedItems.getStringArrayList("INAPP_DATA_SIGNATURE_LIST");
String continuationToken =
ownedItems.getString("INAPP_CONTINUATION_TOKEN");
//
if(purchaseDataList.size() == 0){
paid = false;
App.paid = false;
SharedPreferences.Editor editor = PreferenceManager.getDefaultSharedPreferences(MainActivity.this).edit();
editor.putString("paid", "");
editor.commit();
}
for (int i = 0; i < purchaseDataList.size(); ++i) {
String purchaseData = purchaseDataList.get(i);
String signature = signatureList.get(i);
String sku = ownedSkus.get(i);
try {
JSONObject jo = new JSONObject(purchaseData);
String sku1 = jo.getString("productId");
if (sku1.trim().toLowerCase().equals("paid2")) {
paid = true;
App.paid = true;
SharedPreferences.Editor editor = PreferenceManager.getDefaultSharedPreferences(MainActivity.this).edit();
editor.putString("paid", "1");
editor.commit();
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
try {
stopAds();
} catch (Exception e) {
}
}
}, 2000);
}
else
{
paid = false;
App.paid = false;
SharedPreferences.Editor editor = PreferenceManager.getDefaultSharedPreferences(MainActivity.this).edit();
editor.putString("paid", "");
editor.commit();
}
} catch (JSONException e) {
// alert("Failed to parse purchase data.");
e.printStackTrace();
}
이 아이디어는 월 구독료를 받고 있습니다. 구독 여부에 관계없이 검색하고 싶습니다. 그가 구독하는 경우 sharedpreference를 1로 지불하고, 그렇지 않으면 "".APP APP 월간 구독을 검색하는 방법을 구입하십시오.
이렇게하려면 어떻게해야합니까? 내가 지금 사면, 어떻게 바르게 할 수 있니? 구독을 취소하면 목록에 없거나 더 이상 없습니까?