現象
- 開発中のアプリがPlayプロテクトに有害なアプリとして認定されたことでアプリがインストールできなくなった?
- adb経由ではインストールできるが、Webページからダウンロードしたものはインストールできない。
- Webページからダウンロードしたものをインストールしようとすると、「インストールされません」と出てインストールできない。
前提
- アプリをインストールする場合は上書きではなく、アンインストール後、再度インストールします
原因
Playプロテクトを無効化することでインストールできることを確認しました。
そのため、Playプロテクトがインストールできない原因と判断しました。
次の2点を根拠に原因とするには弱い気もしますが、最も可能性の高い原因と思っています。
- Playプロテクトのダイアログが出たこと
- ダイアログが表示されるようになってからインストールできない現象を確認したこと
他に情報をお持ちの方は教えていただけると嬉しいです。
以下は原因調査で確認した内容です。
原因調査
複数ユーザにインストールされているから?
使用した端末では複数ユーザの設定はされておらず、所有者のみある状態です。
そのため、他のユーザにもインストールされていて、端末から完全にアンインストールされた状態ではないために発生したというわけではありませんでした。
パーミッションの問題?
こちらにあるように、adb経由であればエラーが出るとのことなので、adbからインストールを試しました。
しかし、なんのエラーもなくSuccessのみ表示され何事もなくインストールされました。
署名に使用したキーストアが異なっている?
開発段階なので、開発者が各々キーストアを作成していました。
そのため、共通のキーストアを作成し、今後はそれを使用してAPKを作成するようにしました。
APKの署名に使用したキーストアと前述した共通のキーストアを比較しましたが、同一のものであることが確認できました。
Playプロテクト?
最初に現象を確認した担当者から聴取したところ、インストールしようとしたときにPlayプロテクトのダイアログが表示され、「OK」を押したとのこと。
ユーザーに対して有害なアプリとして認定された?ためインストールできない可能性があるかもしれません。
しかし、調べても有害認定の基準は不明。
ヘルプページからガイドライン、ポリシーを確認しましたが、開発中のアプリには該当しないため問題はありません。
別端末で確認したところ、Playプロテクトのダイアログが表示されました。
ダイアログによると「提供元不明」が理由として挙げられていますが、提供元不明のアプリのインストールを許可するように設定しています。
ダイアログの「OK」を押さず、「インストール」を押すことでインストールできましたが、アンインストールすると次回からはPlayプロテクトのダイアログが出ることもなく、「インストールされません」と出てインストールできなくなりました。
Webページの問題?
インストールするWebページの問題の可能性はあるかもしれませんが、これに関しては私では確認できないのでこの点については調査できず。
サーバとの通信で問題が発生することが多々あったこともあり、可能性としては捨て切れていません。