Я играл в приложении Dungeons, а также в своем собственном биллинговом коде, и почти все работает, кроме одной странности.
Кажется, что независимо от того, что я делаю, я не могу получитьDEVELOPER_PAYLOAD для отображения в подписанном ответе JSON.Если я правильно читаю, документы, кажется, говорят, что я должен увидеть developer_payload в ответе рынка JSON.Приложение Dungeons, похоже, считает, что оно должно видеть developer_payload в json.
Я не заставил его работать в моем коде, и, похоже, он не работает в примере с Dungeons на моем телефоне.
Вот некоторые фрагменты моего кода:
Bundle request = makeRequestBundle("REQUEST_PURCHASE");
request.putString(C.DEVELOPER_PAYLOAD, "testing 123");
C.DEVELOPER_PAYLOAD - это:
public static final String DEVELOPER_PAYLOAD = "DEVELOPER_PAYLOAD";
И вот что я вижу в состоянии покупки: измененные ответы
05-14 20:13:08.360: INFO / BillingService (715): purchaseStateChanged получил подписанные данные: {"nonce": 9005407554096378381, "orders": [{"tificationId ":" android.test.purchased "," orderId ": "action"," packageName ":" com.mypackage "," productId ":" android.test.purchased "," purchaseTime ": 1305429187752," purchaseState ": 0}]}
Заранее спасибо!
РЕДАКТИРОВАТЬ: Я наконец понял это.Оказывается, developer_payload не проходит, если вы используете какой-либо из тестовых идентификаторов элементов Android.Вы должны использовать реальные вещи в приложении.