web-dev-qa-db-ja.com

アプリ内課金のテスト:「パブリッシャーはこのアイテムを購入できません」

私のアプリは、デバイスでのアプリ内購入手順の「実際の」テストを受ける準備ができているようです。ただし、Playストアで「パブリッシャーはこのアイテムを購入できません」というエラーメッセージが表示されます。さて、これをどのようにテストするのですか?テストのためだけにダミーのアカウントで携帯電話を再インストールして、携帯電話の設定を失いたくありません。開発者コンソールの[設定]-[ライセンステスト]で、[テストアクセスのあるGmailアカウント]にメールアドレスを追加しましたが、これで何も変わりません。とても混乱します!

64
richey

開発者は自分で何かを購入することはできません。完全にテストするには、開発者コンソールでテストアカウントを作成し、それがプライマリアカウントであるデバイスにアプリをインストールする必要があります。他の方法はありません。 http://developer.Android.com/google/play/billing/billing_testing.html を参照してください

43
don smolen

ここでは、すべての要件を1つの答えにしようとしています。これは私のために働いた最も簡単なプロセスです:

  1. 新しいGmailアカウントを設定するか、デベロッパーアカウントではない既存のGmailアカウントを使用します。
  2. Google Playデベロッパーコンソールの[設定]> [アカウントの詳細]> [ライセンステスト]でテストアカウントのメールアドレスを一覧表示します。
  3. デバイスで、[設定]> [アカウント]に移動し、開発者アカウントを選択し、3つのドットのメニューをタップし、[削除]を選択してデバイスからアカウントを削除します。後で再び追加できます。
  4. アプリの署名付きリリースバリアントを作成します。
  5. アプリをアルファ版としてPlayストアにアップロードして公開し、アクティブになるまで数時間待ちます。 または内部テストチャネルをセットアップして更新を高速化する
  6. デバイスにアプリのデバッグバージョンが既にインストールされている場合は、それを削除する必要があります。または、 この手法 を使用して、デバッグバージョンとリリースバージョンを並行して実行します(ただし、デバッグバージョンを最初に削除する必要があります)。
  7. リリースバージョンをデバイスにダウンロードします。どうやら、アプリのURLに直接移動することでPlayストアからこれを行うことができますが、これを試してみるたびに「アイテムが見つかりません」というメッセージを受け取りました。アプリを自分のサーバーにアップロードし、そこからデバイスにダウンロードしました。
  8. リリースバージョンをデバイスにダウンロードします。または、 この手法 を使用して、リリースビルドにAndroid Studioからキーストアから署名し、アプリをデバイスにAndroidスタジオ。
  9. デバイスでリリースバージョンを実行します。 Playストアのアルファ版がまだアクティブになっていない場合、アプリのバージョンがアプリ内課金用に設定されていないというエラーが表示されます。アルファ版の準備ができたら、テストプロセスを進めることができます。
  10. 支払い画面が表示されたら、実際の支払い情報を入力する必要がありますが、購入に対して請求されることはありません。 Googleテストアカウントにクレジットカード情報を追加するのではなく、既存のPaypalアカウントを使用することを選択しました。
21
arlomedia

その間、SKU IDを「Android.test.purchased」に変更することで手伝いました( http://developer.Android.com/google/play/billing/billing_testing.html を参照) 「種類」に購入プロセスを歩き、それで少し遊んでください。

しかし、これは私の意見ではスムーズなソリューションではなく、開発者は「実際の」ユーザーが見たり経験したりするものを見ていないため、部分的に満足しているだけでなく、偽の名前を持つブラックボックスからいくつかの結果コードを受け取りますそのようにタイトルが付けられています)、Google Playのインターフェースを超えることはできません。

14
richey

この迷惑な機能にまだ固執しているすべての人のために、Android(5+ Lollipop)の最新バージョンを使用したソリューションがあります。

簡単な解決策1.設定に移動し、「ユーザー」までスクロールダウンします2.新しいテストユーザーを追加します。 3.このユーザーでアプリを開きます

これで、テストユーザーを使用してアプリの購入をテストできます。

6
Oliver Dixon

これを解決するには、アプリをアンインストールし、Playストアにアクセスして、開発者以外のアカウントに切り替えて、アプリをダウンロードしてインストールします。

4
Mark Pazon

アプリをストアにアップロードするために使用したのと同じアカウントを使用して、そのアイテムを購入しようとしています。

Android [email protected]を使用してストアにアプリをアップロードし、abc @ gmail.comを使用してそのアプリで購入しようとすると、そのエラーが表示されます。

別のGoogleプレイストアアカウントを使用して、たとえば誰か他の人の電話で購入してみてください。

結論:自分で購入することはできません。

3

私自身の落とし穴の要約:

  • アルファまたはベータチャンネルでアプリをアップロードする
  • アプリを公開します(ベータ版またはアルファ版のチャンネルで公開しても、アプリはテスターリスト以外の誰にも表示されませんでした)
  • アカウントを「テスター」リストに追加します
  • 「テスター」リンク(「 https://play.google.com/apps/testing/ <package_name>」のようなもの)に移動し、「参加」をクリックします(見逃したものです)
  • アプリ内アイテムを公開する
  • アプリのrelease(!)バージョンをビルドし、デバイスにアップロードします。
  • デバイスバージョンとマーケットバージョンが同じリリースキーで署名されていることを確認してください

  • 市場バージョン番号がビルドグラドルで定義されたものより小さくないことを確認してください

3
Aleksey_M

私は同じエラーに直面していましたが、今では私の失敗の2つの主な理由が解決しました:
1。アプリ内製品を有効にしていませんでした。つまり、非アクティブモードでした
2。テストする場合は、ベータテスターを追加する必要があります。

0
user2794195

私の意見では、Google Playのアプリ内コードなしで有料版と無料版の機能を完全にテストすることが最善の方法です。最後にのみ、inappコードを追加して、無料またはプロを切り替えます。 APKをアルファリリースにアップロードし、開発者アカウントやアプリ自体を見たことがないデバイスを取得します。交換可能なコードでインストールして購入します。コードが機能する場合は、実際の支払いが必要です(支払い方法はコードベースの一部ではなく、Google側にあります)

0

私はこのエラーを解決しました

  1. テストに署名済みapkを使用した
  2. アプリ内の製品名と同じSKU名
  3. アプリ製品はアクティブ状態です
  4. アプリはステータスショーを公開する必要があります
0
Happy

この問題は次の方法で修正しました。
1。署名済みapkを使用する
2。アプリ内製品を有効にしていませんでした。つまり、非アクティブモードでした

0
Mursaleen

Eclipseから携帯電話にAPKを手動でインストールしてから手動で開くと、同じ問題に直面しました。正しい手順は、アルファテストのためにGoogle Playに送信し、数時間待って、もちろん管理しなければならないアルファテスターまたはベータテスターに​​公開され、作成し、アプリへのアクセスを許可する必要があることです。開発者は、数時間後にテスターに​​提供するリンクが記載された電子メールを受け取ります。それが起こったら、それをあなたのコミュニティに転送してください。モバイルで追加のGoogleアカウント(コミュニティに属する)を作成し、そのGmailでGmailを開いてリンクを押します。テスターとしてアプリを自動的にダウンロードするグーグルプレイに案内します。インストール、ガスを購入..多田!!