0

Ich versuche, ein Abonnement anzubieten, aber die PendingIntent, die ich von getBuyIntent bekomme, ist immer null. Obwohl das Anfordern von Käufen und Artikeldetails funktioniert.PendingIntent von getBuyIntent zurückgegeben ist immer Null

Ich habe schon versucht mit verschiedenen Konten, signiert, debuggable und nicht debuggable APKs, aber immer noch das gleiche.

Bundle bundle = mService.getBuyIntent(3, getActivity().getPackageName(), sku, "subs", developerPayload); 

for (String key : bundle.keySet()) { 
    Log.d("SUBSCRIBE: " + key + " = \"" + bundle.get(key) + "\""); 
} 

PendingIntent pendingIntent = bundle.getParcelable("RESPONSE_BUY_INTENT"); 

if (bundle.getInt("RESPONSE_CODE") == BILLING_RESPONSE_RESULT_OK) { 
    if (pendingIntent != null) { 
     // Start purchase flow (this brings up the Google Play UI). 
     // Result will be delivered through onActivityResult(). 
     getActivity().startIntentSenderForResult(pendingIntent.getIntentSender(), RC_BUY, new Intent(), 
       Integer.valueOf(0), Integer.valueOf(0), Integer.valueOf(0)); 
    } else { 
     Log.e("Subscribe", "PendingIntent is null!"); 
    } 
} 

Und das ist die logcat Ausgang

: SUBSCRIBE: RESPONSE_CODE = "0"
: SUBSCRIBE: BUY_INTENT = "PendingIntent {b1c5591: [email protected]}"
: Abonnieren: PendingIntent ist null!

Diese (http://developer.android.com/google/play/billing/billing_integrate.html#Subs) wird die Umsetzung ich mit dem kleinen Unterschied,, dass mein Code in einem Fragment anstelle einer Aktivität platziert

Antwort

1

Der Null reponse Code gibt es funktioniert, aber Ihr Bündel Schlüssel falsch, ich denke, versuchen

bundle.getParcelable("BUY_INTENT"); 
+0

Ein weiterer offensichtlich dummer copy-paste Bug :-) Dies ist nicht das erste Mal. Schade, dass die Google-Dokumentation kein Wiki ist ... aber trotzdem danke! –