web-dev-qa-db-ja.com

これはどういう意味ですか:失敗[INSTALL_FAILED_CONTAINER_ERROR]?

アプリをデプロイしようとすると、時々このエラーが発生します:

Failure 
[INSTALL_FAILED_CONTAINER_ERROR] 

Googleで検索しようとしましたが、エラーの意味や原因を見つけられません。 IDE(IntelliJ)を介してデプロイします。ファイルはデバイスに/ data/local/tmp(ルート化されていないHuawei Ideos、2.2を実行)にコピーされますが、パッケージマネージャーはそれを好まないようです。 apkをインストールする前に、事前にデバイスからアプリを削除しました。また、デバイスの/ data/local/tmpに古いファイルがないことを確認しました。それでも私は今このエラーを受け取っています。アプリを「実行」してIDEを介してデプロイするため、パッケージはデバッグキーで署名する必要があります。

$ pwd 
/data/local/tmp 
$ ls -l 
-rw-rw-rw- Shell    Shell    17257686 2011-04-21 20:31 
com.company.shop 
$ pm install -r com.company.shop 
        pkg: com.company.shop 
Failure [INSTALL_FAILED_CONTAINER_ERROR]

それは何を意味し、それを解決する方法は?

編集/更新:

アプリをSDカードにインストールすることを許可しない場合、エラーを回避できます

Android:installLocation="internalOnly"

マニフェストで。開発には問題ありませんが、本番には、私が望むものではありません-私のアプリは17メガバイトと非常に大きいためです。したがって、私はそれがSDカード上にあることを好む。これをルート化せずに外部メモリにインストールする方法(これが/mnt/secure/asec/smdl2tmp1.asecを削除できる唯一の方法であるため、これも1つのソリューションであると思われます)。

125
Mathias Conradt

デバイスからこのファイルを削除します

/mnt/secure/asec/smdl2tmp1.asec

Mathias Conradt(OP)による編集/更新:

ルートアクセス権がない場合は、SDカードをマウントし、PCから削除する必要があります。

/.Android_secure/smdl2tmp1.asec
44
Jazz

インストール場所を変更します

Android:installLocation="preferExternal"

Android:installLocation="auto"

プロジェクトのAndroidManifest.xmlで。

218
Rene

エミュレータを使用している場合は、エミュレータを編集してメモリを追加します。このような問題がありましたが、AVDのメモリを200 MBから1000 MBに編集するだけで問題は解決したようです...幸運を祈ります。

31
Dan

これは、破損した以前のインストールがあったことを意味します。外部にインストールする場合は、SDカードをフォーマットしてからもう一度お試しください。

7
dalbator

このエラーが繰り返し発生しました。エラーを完全に回避する最も簡単な方法は、SDカードをフォーマットすることです。電話またはエミュレータの内部ツールを使用します。内部Androidツールでフォーマットされない限り、自動生成されたSDカードまたは独自のsdcard.isoの作成が失敗し、このエラーが発生することがわかりました。

6
user2445968

私にとってこれは、エミュレータのSDカードのスペース不足が原因でした。私はかなり大きなプロジェクトで働いていて、40 mbで十分だと思っていましたが、200 mbに変更すると問題はなくなりました。

4
noisecapella

Link2SDの2番目のパーティションがあるNote 8のCyanogenmod 12.1(Android 5.1.1)のさまざまな.apkで同じエラーが発生しました。ルートとしてadbを介して強制的にインストールすることで、アプリをインストールすることができました:

adb root
adb install -f myapp.apk
3
Tobi G.

Android 5.0.1からこのエラーメッセージを受け取りました。 [設定]-> [アプリ]-> [優先インストール場所]を使用して、優先インストール場所を[リムーバブルSDカード]に変更しました。

オプションを「システムに決定させて」に戻すと、エラーメッセージは消えました。

3
nyxee

私にとっては、デバイス言語でした。アプリケーションをテストするために、言語をアラビア語に変更します。その後、このエラーが発生しました。言語を元に戻すとうまくいきました。

1
Elyess Abouda

Android:installLocation = "auto"は動作します。

そうでない場合は、外部ストレージスペースのサイズを確認してください。[使用可能なメモリ>アプリのサイズ]ストレージスペースが十分でない場合、このエラーもスローされます。

状況によっては、libs/Android-support-v4.jarを削除するとこのエラーが生成されます。

0
Amir Saniyan

私にとっては、いくつかのアプリケーションをアンインストールすることで問題が解決しました。ローカルストレージに十分なメモリがあれば、APKの展開は正常に完了しました。しかし、通常はガジェットを再起動するだけでインストールは完了します。また、Clean Masterなどの一部のプログラムが役立つ場合があります。多くの場合、不要なプロセスを消去してClean Masterでプログラムを閉じ、十分なメモリを確保します。

0
CoolMind

エミュレータでも同様の問題がありました。エミュレータのCPUタイプをARMからIntelに変更すると、この問題はなくなりました。

0
Wytas

デバイスを再起動すると問題が解決しました。

0
theOzmic