6

Androidのアプリ内課金システムを使い始めたばかりです。ダンジョンのアプリケーションサンプルを問題なくテストしました。

そのため、アプリ内を自分のアプリケーションに統合しようとしていますが、宣言されたproductIdまたは静的テストIDを使用すると、同じエラーが発生します。

この商品は購入できませんでした。(エラーコード:IAB-DPTL)

このアプリケーションはすでに市場に出ています。署名付きのバージョンをアップロードしましたが、これも電話でプッシュしました(つまり、両側で同じバージョンです)。電話でテストアカウントとして使用されるメールアドレスを追加しました。アプリケーションをアクティブ化する必要がありますか?(現在公開されているアプリケーションを削除するリスクがありますか?)

何が欠けているのかわかりません。また、このエラーコードについてWeb上で何も見つけることができません。

私が間違っているのは何ですか?

4

1 に答える 1

15

わかりました、解決策を見つけました!!!

このバグは、購入リクエスト中にproductIdに関連付けた「payloadContent」が直接原因です。

以前は、購入可能なアイテムをJSONに変換し、それを開発者のペイロードコンテンツとして配置していました。(復元フェーズに役立つと思いました...)

このpayloadContentを削除するためにテストしたところ、問題はありませんでした。

さまざまなトランザクションで使用されるデータ形式はJSONであるため、JSONペイロードコンテンツフィールドは一部の待機フィールドと干渉する必要があると思います。(「タイトル」や「リンク」など)

アップデート:

Nikolay Elenkovが言ったように、エラーはおそらくペイロードの長さが原因であり、JSONは機能しているようです。したがって、開発者のペイロードサイズには256文字の制限があります。

そして、エラーコード「IAB-DPTL」は「アプリ内請求-開発者のペイロードが長すぎます」を直接意味していると思います

ありがとうニコライ!

于 2012-04-18T16:11:54.083 に答える