Androidでアプリをインストール時に「Play プロテクトによりブロックされました」と表示される



Google Play プロテクトによって、アプリケーションのインストールが行えない場合があります。この症状が発生する条件については公開されていないため、確実な情報ではないことをご了承ください。

現象

  • アプリケーションをインストールしようとした際に「Play プロテクトによりブロックされました」というダイアログが表示される
  • 「インストールする」を選択するとインストールは完了する
  • ただし次回以降のインストールは、以下のメッセージが表示され常に失敗してしまう
"アプリはインストールされていません。"

回避策

  • 自動生成される debug.keystore を用いてアプリの署名を行う
    • Android Studio(Android Gradle Plugin) がビルド時に自動生成する $HOME/.android/debug.keystore で署名を行ったビルドではこの問題が発生しないことが確認されています
    • 通常、 debug ビルドでは上記の証明書を用いてアプリがビルドされています
    • release ビルドを debug.keystore で行う場合、以下のような設定を build.gradle に追加することで、 ./gradlew buildReleaseDebugKeydebug.keystore を用いたリリースビルドを作成できるようになります。 (Gradle DeployGate Pluginをご利用の場合は uploadDeployGateReleaseDebugKey を実行することでアップロードまで完了できます)
      android {
        buildTypes {
          // debug, release の定義後に以下を追加
          releaseDebugKey {
            // releaseの設定を使用
            initWith release
          }
        }
      
        signingConfigs {
          releaseDebugKey {
            // debugの署名を使用
            initWith debug
          }
        }
      }
  • Google Play プロテクトを無効化する
    • 開発中のアプリの検証のみに用いる検証用端末などは、こちらの方法で問題を回避することができます
    • 操作方法はGoogle アカウント ヘルプの「Google Play プロテクトを無効にする、または再度有効にする」をご覧ください
    • Playプロテクトを無効化する場合、Google Playによるマルウェアなどのインストールからの保護が無効になるためご注意ください
  • Google Playに同じビルドをアップロードする
    • Google PlayにAPKをアップロードすることで、同一のAPKはブロックされなくなることが確認されています
    • トラックへの公開をしない状態の未公開のアーティファクトでも解除されます
    • ブロック解除の反映までには数時間〜1日程度掛かります
  • 異議申し立てを行う(英語のみ)
    • アプリの確認と異議申し立てよりGoogle Play に対して異議申し立てを行うことで、ブロックが解除されることがあります。(約2週間ほど掛かるようです)
DeployGateでは、引き続き開発中のアプリのインストールの障壁を取り除くための検証および対応を行ってまいります。お手数をお掛けしますが、現時点では上記の内容をお試しいただけますようお願い申し上げます。

Feedback and Knowledge Base