署名したはずのAndroidアプリを端末にadb install
しようとしたらなぜかこんなエラーが出てきた・・。
4417 KB/s (5418973 bytes in 1.198s)
pkg: /hoge/fuga/myapp.apk
Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]
こちらの方法を試したらできるようになりました。
署名するときにjarsigner
のオプションに-sigalg MD5withRSA -digestalg SHA1
を付けたらよいようです。
※ 2016.08.22追記: 最新のものではオプションの指定方法が少し異なるようです。 comment-08a24c55bd18bf125c38
あまり詳しく調べてないですが、JDK7ではこのオプションを付ける必要があるとのこと。
でも今回はインストールする端末を変えたらなぜか発生しました・・。
※ 参考にしたサイト
・ JDK7では署名アルゴリズムが変更になっているためINSTALL_PARSE_FAILED_NO_CERTIFICATE エラーが発生してapkがインストールできない: 発火後忘失
・ JDK7でAndroidアプリをリリースビルドする方法 — KaoriYa