1

他の人がこの同じ問題に遭遇した場合に備えて、かなり長い説明をします...

Android アプリに Google アプリ内課金を実装しており、アプリケーション ユーザーに「サブスクリプション」を提供する予定です。Google のアプリ内課金バージョン 3 (IAB V3) をインストールしてコーディングし、Google のテスト アカウントを使用してすべてが機能するようにしました。次に、開発者ダッシュボードで製品をセットアップし、コード内の SKU を変更して、新しいサブスクリプション製品を指すようにしました。サブスクリプションを購入しようとしたときに「アイテムが見つかりません」というメッセージが表示されるようにのみロールアウトしました。フォーラムを検索したところ、多くの人が「数時間待てば動き始める」と言っているのを見ました。一晩待っても、「アイテムが見つかりません」というエラーが表示されました。その後、IAB V3 がサブスクリプションをサポートしていないことに気付きました。

IAB V2 を使用して書き直す必要があります。SDK マネージャーで、「Google Play Billing Library - 3」しか表示されません。バージョン 2 をインストールして、アプリ内課金のサブスクリプションを取得するにはどうすればよいですか? SDK マネージャーで Google Play Billing Library バージョン 3 を削除し、更新しました。「廃止」がチェックされており、インストール用のバージョン 2 はまだ提供されていません。

4

3 に答える 3

2

私は同じ問題を抱えていて、実際にV2を使用していてV3に切り替えました。V2 と V3 の違いは昼と夜のようなもので、二度と戻ることはありません。V3 は、理解と使用がはるかに簡単です。

x 日が経過するまで消費しないことで、V3 でカスタム サブスクリプションを実装できます。次に、アイテムを消費し、ユーザーに新しい x 日のサブスクリプションを購入するよう促します。欠点は、ユーザーにサブスクリプションを再度購入するよう依頼する必要があることです。

V3 サブスクリプションはまもなく利用可能になるため、利用可能になったら、コードを簡単に更新して新しいバージョンをアップロードできます。

サンプルコード:

    IabHelper.QueryInventoryFinishedListener mGotInventoryListener = new IabHelper.QueryInventoryFinishedListener() 
    {
      public void onQueryInventoryFinished(IabResult result, Inventory inventory) 
      {
        if(inventory.hasPurchase("android.test.purchased")) 
        {
          java.util.Date expirationDate = your expiration Date;
          java.util.Date purchaseDate   = new java.util.Date(inventory.getPurchase("android.test.purchased").getPurchaseTime());

          if(purchaseDate.compareTo(expirationDate)<=0) //expired
          {
            mHelper.consumeAsync(inventory.getPurchase("android.test.purchased"), mConsumeFinishedListener);
            mySharedPrefs.edit().putBoolean("isSubscribed",false).commit();
          }
       }
     }
   };
于 2013-01-11T16:02:11.217 に答える
0

まだロールバックしていない場合は、IABV3がサブスクリプションのサポートを開始したようです。

http://developer.android.com/google/play/billing/billing_overview.html

于 2013-02-15T09:18:44.253 に答える
0

SDKマネージャーがそれを見つけられない理由がわかりません。元々持っていたので、まだ持っています。

これがあなたのためのzip版です:

http://blog.blundell-apps.com/wp-content/uploads/2012/02/in-app-billing-v02.zip

これを次の場所に解凍できます。

android-sdk-macosx/extras/google/play_billing/in-app-billing-v02

Google Playデモには別の選択肢があり、私のチュートリアルはそのうちの1つです:-)

http://blog.blundell-apps.com/simple-inapp-billing-payment/

ロボットメディアにはライブラリがあります。

http://www.robotmedia.net/2011/06/android-billing-library-in-app-billing-made-simple/

(つまり、SDK-Manager以外の場所からSDKコードを取得できます)

于 2012-12-30T21:58:50.713 に答える