web-dev-qa-db-ja.com

許可の問題GooglePlay

androidpublisher.inapppurchases.getで問題が発生しました

私のプロジェクトは https://code.google.com/p/google-api-Java-client/wiki/OAuth2#Service_Accounts に従っており、新しいGooglePlayアカウントに移行するまでは正常に機能していました。 。したがって、サーバー間要求を実行すると、この応答を受信します。

{
  "code" : 401,
  "errors" : [ {
    "domain" : "androidpublisher",
    "message" : "The current user has insufficient permissions to perform the requested operation.",
    "reason" : "permissionDenied"
  } ],
  "message" : "The current user has insufficient permissions to perform the requested operation."
}

グーグルのドキュメントにはこれについての手がかりがないので、誰もがこの応答に精通しています。

19
stebetko

GooglePlayの設定で管理者ユーザーとしてユーザーサービスアカウントのメールアドレス[email protected]を追加すると問題が解決しました。

30
stebetko

Google Playコンソールから(管理者アクセスで)に移動します:

  1. 設定(左パネル)
  2. 開発者アカウント(左パネル)
  3. ユーザーと権限(左側のパネル)
  4. [新しいユーザーを招待]ボタンをクリックします。
  5. サービスアカウントのメールアドレスを入力します(使用しているjsonファイルにあり、サービスアカウントの作成時にGoogleが生成したものと同じです)
  6. [役割のドロップダウン]メニューで[管理者]を選択します。
  7. [招待状を送信]をクリックします

それでおしまい。今、誰もあなたを止めることはできません! :)

7
Valerio

残念ながら、受け入れられた答えは私たちにとってうまくいきませんでした。領収書を確認するには、アクセストークンが必要です。アクセストークンはRefreshTokenによって生成されています。 RefreshTokenには、Googleアカウントへの関連付けがあります。そのGoogleアカウントには、GooglePlayコンソールにView financial informationが必要です。

  1. Android Client IDを使用してリダイレクトURLを取得します
  2. Financial Access Enabled AccountでリダイレクトURLを使用して、更新トークンを取得します
  3. その更新トークンでAccess Tokenを取得します
  4. Access Tokenを使用してIAPレシートを確認します
3