No content provider found for permission revoke: file:///data/local/tmp/*.apk
eclipseからデバイスへのアプリのインストールについてINSTALL_FAILED_INSUFFICIENT_STORAGE
ヒントによると、インストールに失敗したのはストレージ不足のためで、次のクリア操作を実行します.
上の方法がだめなら、次の方法を試してみてください.
android:installLocation="preferExternal"
注:
Android:installLocationは、「auto」、「internalOnly」、「preferExternal」の3つの値のいずれかに設定することができる.①auto:プログラムは外部の記憶媒体(例えばSDカード)にインストール可能であるが、デフォルトでは携帯電話のメモリにインストールされる.携帯電話のメモリが空の場合、プログラムは外部記憶媒体にインストール.プログラムが携帯電話にインストール後、ユーザはプログラムを外部記憶媒体に置くかメモリに置くかを決定することができる.②internalOnly:デフォルト.この値を設定と、プログラムはメモリにしかインストールできません.メモリが空の場合、プログラムは正常にインストールできません.③preferExternal:プログラムを外部記憶媒体にインストールするが、システムはプログラムが必ず外部記憶媒体にインストールされることを保証しない.外部記憶媒体が不可または空の場合、プログラムはメモリにインストール.外部ストレージがこのメカニズムをサポートしていないため、プログラムがfor ward-lockingメカニズムを使用する場合もメモリにインストールされます.プログラムのインストール後、ユーザは、プログラムが外部にあるべきか内部にあるべきかを自由に切り替えることができる.注意:プログラムがGoogle PlayのCopy Protection機能を使用する場合、メモリにインストールするしかありません.プログラムが外部記憶媒体にインストール場合、①apkファイルは外部の記憶媒体に移動するが、プログラムのデータはメモリ②に保存される.apkファイルのコンテナは、ランダムに生成する鍵を用いて暗号化され、このプログラムをインストールする設定のみが外部記憶媒体に存在するデータを使用することができる.警告:外部記憶媒体がアンインストールされると、その外部記憶媒体にインストールされているプログラムはすぐに終了します.後方互換性:android:installLocationが宣言されていますが、android:minSdkValersionが8未満の場合、Froyoを下回るAVDを使用してコンパイルすることで、Froyoを下回るシステムではandroid:installLocationは無視され、Froyoを下回るシステムでは、私たちが指定したandroid:installLocationが使用されます.我々のプログラムが次のような動作をする場合、プログラムを外部記憶媒体にインストールすべきではない①サービスが実行するサービスは終了し、外部記憶媒体が再ロードされた場合、サービスは再起動されない.②Alarm Serviceアラームサービスはキャンセルされ、開発者は外部記憶媒体の再ロード後にアラームサービスを再登録する必要がある.③Input Method Engines入力方式はシステム入力方式に変更され、外部記憶媒体が再ロードされた後、ユーザーはシステム設定により我々の入力方式を起動することができる④Live Wallpapers我々の動的壁紙はデフォルトの動的壁紙に置き換えられる.外部記憶媒体をリロード後、ユーザは交換できる.⑤Live Folders私たちのダイナミックフォルダが移動されます.⑥App Widgets私たちのウィジェットは削除されます.通常、システムが再起動した後、私たちのウィジェットしか使用できません.⑦Account ManagementがAccountManagerを使用して作成するアカウントは、記憶媒体が再ロードされるまで消滅する.⑧Sync Adapters外部記憶媒体が再ロードされた場合のみ、同期機能が使用可能⑨Device Administrators我々のDevice AdminReceiverが無効になる⑩傍受起動完了イベントシステムは外部記憶媒体をロードする前にACTION_を送信するBOOT_COMPLETED放送このため、外部の記憶媒体にインストールプログラムは、起動放送を受け付けない.通常、上記の特性を使用しない限り、外部記憶媒体にプログラムをインストールすることができる.例えば、大きなゲームプログラム.私たちのAPKファイルが何M大きいかを真剣に考えなければならない.プログラムを外部の記憶媒体に移動して、ユーザーのメモリ節約を助けるかどうかを考えなければならない.
まとめ:installLocationを設定するには開発時のみ使用できますが、アプリケーションが公開された場合は、installLocationの値をメモリにインストールすることを強くお勧めします(アプリケーションが外部ストレージにインストールされるのを防止し、外部ストレージにインストールするのは危険な行為です).
ヒントによると、インストールに失敗したのはストレージ不足のためで、次のクリア操作を実行します.
adb root
adb remount
adb shell rm -r /data/dalvik-cache/*
上の方法がだめなら、次の方法を試してみてください.
android:installLocation="preferExternal"
注:
Android:installLocationは、「auto」、「internalOnly」、「preferExternal」の3つの値のいずれかに設定することができる.①auto:プログラムは外部の記憶媒体(例えばSDカード)にインストール可能であるが、デフォルトでは携帯電話のメモリにインストールされる.携帯電話のメモリが空の場合、プログラムは外部記憶媒体にインストール.プログラムが携帯電話にインストール後、ユーザはプログラムを外部記憶媒体に置くかメモリに置くかを決定することができる.②internalOnly:デフォルト.この値を設定と、プログラムはメモリにしかインストールできません.メモリが空の場合、プログラムは正常にインストールできません.③preferExternal:プログラムを外部記憶媒体にインストールするが、システムはプログラムが必ず外部記憶媒体にインストールされることを保証しない.外部記憶媒体が不可または空の場合、プログラムはメモリにインストール.外部ストレージがこのメカニズムをサポートしていないため、プログラムがfor ward-lockingメカニズムを使用する場合もメモリにインストールされます.プログラムのインストール後、ユーザは、プログラムが外部にあるべきか内部にあるべきかを自由に切り替えることができる.注意:プログラムがGoogle PlayのCopy Protection機能を使用する場合、メモリにインストールするしかありません.プログラムが外部記憶媒体にインストール場合、①apkファイルは外部の記憶媒体に移動するが、プログラムのデータはメモリ②に保存される.apkファイルのコンテナは、ランダムに生成する鍵を用いて暗号化され、このプログラムをインストールする設定のみが外部記憶媒体に存在するデータを使用することができる.警告:外部記憶媒体がアンインストールされると、その外部記憶媒体にインストールされているプログラムはすぐに終了します.後方互換性:android:installLocationが宣言されていますが、android:minSdkValersionが8未満の場合、Froyoを下回るAVDを使用してコンパイルすることで、Froyoを下回るシステムではandroid:installLocationは無視され、Froyoを下回るシステムでは、私たちが指定したandroid:installLocationが使用されます.我々のプログラムが次のような動作をする場合、プログラムを外部記憶媒体にインストールすべきではない①サービスが実行するサービスは終了し、外部記憶媒体が再ロードされた場合、サービスは再起動されない.②Alarm Serviceアラームサービスはキャンセルされ、開発者は外部記憶媒体の再ロード後にアラームサービスを再登録する必要がある.③Input Method Engines入力方式はシステム入力方式に変更され、外部記憶媒体が再ロードされた後、ユーザーはシステム設定により我々の入力方式を起動することができる④Live Wallpapers我々の動的壁紙はデフォルトの動的壁紙に置き換えられる.外部記憶媒体をリロード後、ユーザは交換できる.⑤Live Folders私たちのダイナミックフォルダが移動されます.⑥App Widgets私たちのウィジェットは削除されます.通常、システムが再起動した後、私たちのウィジェットしか使用できません.⑦Account ManagementがAccountManagerを使用して作成するアカウントは、記憶媒体が再ロードされるまで消滅する.⑧Sync Adapters外部記憶媒体が再ロードされた場合のみ、同期機能が使用可能⑨Device Administrators我々のDevice AdminReceiverが無効になる⑩傍受起動完了イベントシステムは外部記憶媒体をロードする前にACTION_を送信するBOOT_COMPLETED放送このため、外部の記憶媒体にインストールプログラムは、起動放送を受け付けない.通常、上記の特性を使用しない限り、外部記憶媒体にプログラムをインストールすることができる.例えば、大きなゲームプログラム.私たちのAPKファイルが何M大きいかを真剣に考えなければならない.プログラムを外部の記憶媒体に移動して、ユーザーのメモリ節約を助けるかどうかを考えなければならない.
まとめ:installLocationを設定するには開発時のみ使用できますが、アプリケーションが公開された場合は、installLocationの値をメモリにインストールすることを強くお勧めします(アプリケーションが外部ストレージにインストールされるのを防止し、外部ストレージにインストールするのは危険な行為です).