Android で、たまーにハマる問題。
自作アプリをインストールするときに、
インストールさていません。
というエラーが出ます。この現象が発生したとき、疑う主な箇所は3点。
まず、署名をしているかどうかをチェック。
A. 署名が正常に終了してあるかどうか。
署名を行ったファイル拡張子 apk を解凍すると、META-INF フォルダがあるか
どうかが目安になります。
META-INF が無い場合、署名を行う必要があります。
本項目はシンプルなだけに、無意識のうちに起こしてしまう方も多いかも?
B. 署名しているのに発生してしまう…。
そんな人は、署名ファイルを変えていないかどうかのチェック!
すでにインストールされているアプリの署名を変更してしまうと、
「インストールされていません」が発生してしまいます。
上記が発生した場合は、一度アプリをアンインストールした後に、インストール
することで解決します。もちろん、署名を戻すでもOKです。
C. 上記、どのパターンでもない場合。
AndroidManifest.xml が正しい形式に乗っ取っているかをチェック。
例えば、同一定義を2重で行ったりすると端末によっては弾かれてしまう。
ってな感じですね。私は上の2つが多い。署名したつもりになっていたのが、
プロジェクトのコピペを行いかつ key ファイルを削除してしまい、存在しない
ファイルに対して
jarsigner -keystore [プロジェクトの途中で削除してしまった古いファイル]
コマンドをバッチで行ってたため、気づかなかった。
作業を自動化(バッチ処理)しており、コピペするときに「keystore ファイル名」を
変更していなかったのが原因の人為的ミスです。
0 コメント:
コメントを投稿