4

私は、他の多くの人と同じように、静的応答が機能していることを確認した後、アプリ内購入をテストしようとしています。しかし、ドキュメント、投稿、および回答を読んでも、何も足し合わないようです。そして、私は非常にイライラしています。

私の最終的な目標は、課金せずにテストを実行できるかどうかを調べることです。

このドキュメントには、できると書かれています -リンク

テスト アクセスが承認されると、これらのユーザーはアプリをサイドロードして、製品のマーチャンダイジング、購入、フルフィルメント フロー全体をテストできます。テスト購入は実際の注文であり、Google Play は他の注文と同じように処理します。購入が完了すると、 Google Play は注文が財務処理に送られるのを防ぎ、ユーザー アカウントに実際の請求が発生しないようにし、完了した注文を 14 日後に自動的にキャンセルします。

と同じリンク

テスト購入中、ユーザーはアプリで実際のマーチャンダイジング、購入、フルフィルメント フローをテストできます。購入時、アプリ内アイテムは通常のアイテムとして実際の価格で表示されます。ただし、Google Play では、簡単に識別できるように、購入ダイアログの中央に通知を表示してテスト購入をマークします。

しかし、このページでは、それは言う -リンク

テスター アカウントを使用してテスト デバイスにログインします。いくつかのアイテムを購入してアプリ内課金アプリケーションをテストし、発生した問題を修正します。テスターに​​実際に課金されたくない場合は、忘れずに購入を返金してください。

WTF ... 誰か知っていますか?無課金でテストできる?もしそうなら、どのように?

4

3 に答える 3

2

In App Billing バージョン 3 を使用している場合は、単純にproduct id="android.test.purchased"を使用できます。これはダミーの製品であり、開発者コンソールに追加しないでください。その商品を手数料なしで購入できます。

android.test.購入済み

この製品 ID を使用してアプリ内課金のリクエストを行うと、Google Play はアイテムを正常に購入したかのように応答します。応答には、偽の購入情報 (偽の注文 ID など) を含む JSON 文字列が含まれます。場合によっては、JSON 文字列が署名され、応答に署名が含まれているため、これらの応答を使用して署名検証の実装をテストできます。

それがあなたを助けることを願っています。

于 2013-06-21T07:47:32.310 に答える
0

購入したら消費する必要があります。

consume.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Thread t = new Thread(new Runnable() {
                @Override
                public void run() {
                    String purchaseToken = "inapp:" + getPackageName() + ":android.test.purchased";
                    try {
                        Log.d("","Running");
                        int response = mService.consumePurchase(3, getPackageName(), purchaseToken);
                        if(response==0)
                        {
                            Log.d("Consumed","Consumed");
                        }else {
                            Log.d("","No"+response);
                        }
                    }catch (RemoteException e)
                    {
                        Log.d("Errorr",""+e);
                    }

                }
            });
            t.start();
        }
    });
于 2014-09-13T15:05:48.423 に答える