Android Marketアプリ内購入をアプリに統合しようとしていますが、実際のアプリ内製品を購入しようとするたびに迷惑なエラーに遭遇します。
サンプルアプリケーション(Dungeons)を取得して、アプリに追加しました。公開キーを更新し、製品のリストも次のように更新しました。
/ **購入可能な製品の製品リストエントリの配列。 * /
private static final CatalogEntry[] CATALOG = new CatalogEntry[] {
new CatalogEntry("full", "Full v", Managed.MANAGED),
};
Eclipseを使用してアプリケーションをエクスポートし、携帯電話にインストールして、Android Market Webサイトにアップロードしました。また、Android Marketウェブサイトで、アプリ内購入としてフルを追加して公開しました。
また、googlemailアカウントをテストアカウント(電話でサインインしているアカウント)として追加しました。
スマートフォンでアプリケーションを実行すると、フル購入しようとするたびに、購入できないAndroidというメッセージが表示されますが、たとえばAndroid.test.purchasedを試してみると、絶対に問題なく動作します。
購入できないAndroidのリクエストしたアイテムのドキュメントには、次のように記載されています:
Android Marketは、アプリケーションの製品リストで要求されたアイテムを見つけることができないことを示します。これは、REQUEST_PURCHASEリクエストで製品IDのスペルが間違っている場合、またはアプリケーションの製品リストでアイテムが公開されていない場合に発生する可能性があります。
製品IDは明確に同じであり、明確に公開されており、サンプルアプリケーションであるため、リクエストは正常に処理される必要があります。
私は同じバージョンのapkを使用しており、inapp製品も公開しており、apkもアクティブにしています。それでも、私は同じ問題に直面しています。それを修正するために私を助けてください。
ご意見をいただければ幸いです!
同じテストアカウントのメールIDを使用しているかどうかを確認してください
このエラーに関する私の経験は次のとおりです。
署名済みAPKを開発者コンソールにアップロードしてください。
デバッガーでアプリを起動しないで、署名済みAPKをデバイスにインストールしてください。
開発者コンソールでテストアカウントを作成してください。
テストアカウントをセットアップする
開発者コンソールでアプリの請求書を作成し、最後にコンソールからアイテムを有効にしてください!!! (これはグーグルのチュートリアルを完全にフォローした後に私を獲得したものです)
マニフェストのVersionCodeとVersionNameが開発者コンソールのバージョンと同じになるように設定してください(Alpha、Beta、またはProduction。ドラフトは機能しなくなりました)。 @alexgophermixの答えは私のために働いた。
実際の出金を伴わないテスト支払いを探している場合は、テストアカウントを別の特別なアカウントリスト「テストアクセスのあるGmailアカウント」に追加する必要があります。プロジェクトのリストを表示できるページで設定に移動し、[アカウントの詳細]ページ(スクロールして、ページのほぼ下部にあります)で[テストアクセスのあるGmailアカウント]リストを見つけます。
チェックするべき事柄はここにあります:
6時間後に私にとってそれがしたことは、この最後の部分でした:
UPDATE
これは、製品がPlayストアでInactive
であり、Activate
であり、正常に機能する必要がある場合に発生します。
このエラーは、完了したすべてが適切で、適切な製品IDで署名されたAPKを使用したときに発生しますが、使用しているaccountが適切でない可能性があることに注意する必要があります有効なクレジットカード詳細。
したがって、テストアカウントでも製品の購入を使用する場合は、そのアカウントに有効なクレジットの詳細が必要です。
このエラーには別の原因が考えられます。問題の原因が見つかるまで、一日中ほとんど腹を立てていました。それはapkバージョンです。 Playストアにアップロードされたバージョン番号よりも高いバージョン番号を持つローカルapk(正しく署名、正しいキー、正しい製品ID)で作業している場合、このエラーも発生します。
これが誰かを助けることを願っています
たぶん私はこれを間違っていましたが、テストしているバージョンがアルファ版、ベータ版、またはプロダクション版としてPlayストアにない場合にもこのエラーが発生します。
新しいバージョンのテスト中に(Playストアにアップロードする前に)VersionCodeとVersionNameを頻繁に更新し、IAB固有の機能をテストするときにこのエラーが発生します。
私の場合、APKタブのOpt-in URL
からリンクを取得する必要があります。ブラウザを開き、リンクを使用します。次に、そのページでテスターとして登録します。
最新の追加(2016/11):
テスターはテスト要求を受け入れる開発者コンソールから取得したリンクから取得する必要があります(セクション:APK)
アプリは公開する必要があります:ベータ/アルファテストで公開しても問題ありません。情報:開発者コンソールで[発行]を押すと、[プロダクション]タブ(セクションAPK内)にプロパゲートしない限り、プロダクションでアプリが発行されません。
製品ステータスが「非アクティブ」の場合は、アクティブにします。これは私のために解決しました。もちろん、Googleの更新には時間がかかります
また、テストメールが登録されていることを確認してください。
「オープンアルファテスト」または「オープンベータテスト」は、インターネット上で提案されたすべての方法を試した後、問題を解決しました。
Android開発者コンソール->アプリ-> APKに移動し、Open Alpha/Betaテストを使用するようにオプトインします。提供されたリンクを自分またはテスターに送信します。
Androidデバイスでそのアカウントでログインしている限り、テストできます。
幸運を
私は同じ問題に直面しました、私のための解決策はあなたのアプリの現在のバージョンをPlayストアにアップロードすることでした、テストのためにアルファまたはベータチャンネルにアップロードする場合、私はこれを行ってエラーがなくなりましたそして、価格の詳細が正しく表示されます..
この問題を解決するには、次の手順を実行します。
Google Play開発者コンソールで製品を作成します。
保存して「アクティブ」に設定します。
APKをGoogle Playにアップロードします。
N.B.アプリ内課金は、手順1で製品を作成してから6時間経過するまで機能しない場合があります。
次の3つの可能性があります。
テストする場合は、アプリをpublishする必要はありません。ドラフトとして保存するだけです。そして、これをアクティブにするのに2〜3時間かかるかもしれません。
上位投票の回答はほぼすべてをカバーしていますが、IAPのテストに取り組むためにアプリリリースプロセスを急いで行うのと同じくらい愚かだった場合は、必ずテストする国のPlayストアでアプリを公開してくださいに!デバイスでこれを確認する簡単な方法は、テストのオプトインURLを開くときに「Google Playでダウンロード」リンクをタップすることです。 Google Playストア経由で開こうとしたときに「アイテムが見つかりません」というエラーが表示される場合は、アプリがそこで公開されていない可能性があります。この問題に遭遇したのは、署名済みアプリをADB経由で正しくサイドロードしていたため、ビルドにIAPが表示されますが、購入しようとするとこのエラーが発生します。