apk ファイル作成と署名
電子証明書を keytool コマンドで作成したので
今回は apk ファイルを作成
プロジェクトを右クリック
Android Tools > Export Signed Application Packages
を選択
これでできると思ったけど
Exoirt Abirted
とエラーがでてしまう
エラーメッセージは
Export aborted bacause fatal lint erros were found
These are listed in the lint View
Elther fix these befre running Export again or turn off Run full erroor check when exporting app
in the Android > Lint Effor Checking preference page
ここででてくる Lint はソースコードの静的解析
これはセキュリティ
パフォーマンス
ユーザビリティ
アクセシビリティ
国際化などのチェック項目に引っかかっている
ということ
この場合の対処方法は
ソースコードの修正
もしくは Lint のチェック項目の緩和となる
まずはソースコードを修正しようとしたけど
エラーのでているのが
/res/values/strings.xml
の
<string name="app_name">PhotoNavi</string>
さすがにアプリ名でエラーは理解できなかったため
Lint app_name
で検索
を参考にしてみたところ
ライブラリの言語リソース設定が
それを利用しているアプリの
リソース設定にまで影響してくる
とのことです
このため
Lint のチェック項目緩和の手段をとることに
設定するのは
Missingtranslation を無視するようにすること
プロジェクトを右クリックし
Properties を選択
Android Lint Preference を選択し
missingt
まで入力して
MissingTranslation の項目を検索
設定値を Fatalから Warning に変更し
applyをクリック
これで変更するとエラーがなくなり次にすすめるように
もう一回
プロジェクトを右クリックして
Android Tools > Export Signed Application Packages
を選択
するとapk ファイルにするプロジェクト名がでるので
Next をクリック
次に keystore ファイルを指定する
すでに作成済みなら
use existing keystore にチェック
Browse で場所を指定
Password には keystore ファイルのパスワードを入力する
次にAlias とパスワードを設定
これも同じパスワードになる
次の画面では
appk ファイルの保存先を指定する
Destination APK file
の横へ保存場所とファイル名を入力
拡張子は
.apk
になる
これは Browse ボタンで保存場所を開くだけでよい
場所が決まったら finish をクリックすると
apk ファイルが作成される
作成された apk ファイルに署名ができているか
調べるには jarsigner コマンドを使う
jarsigner -verify -verbose -certs PhotoNavi.apk
というように
jarsigner -verify -verbose -certs apkファイルのパス
で実行すると署名されているなら
その署名内容が表示される