从 getBuyIntent 返回的 PendingIntent 始终为空

PendingIntent returned from getBuyIntent is always null

我正在尝试提供订阅,但我从 getBuyIntent 获得的 PendingIntent 始终为空。虽然,请求购买和项目详细信息有效。

我已经尝试过使用不同的帐户、已签名、可调试和不可调试的 apk,但仍然一样。

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!");
    }
}

这是logcat输出

: SUBSCRIBE: RESPONSE_CODE = "0"
: SUBSCRIBE: BUY_INTENT = "PendingIntent{b1c5591: android.os.BinderProxy@c48ccf6}"
: Subscribe: PendingIntent is null!

这个 (http://developer.android.com/google/play/billing/billing_integrate.html#Subs) 是我遵循的实现,但有一点不同,我的代码放在片段中而不是 Activity

零响应代码表明它正在工作,但我想你的包密钥是错误的,试试

bundle.getParcelable("BUY_INTENT");