DeploygateでTitaniumで作ったandroidアプリがうまくインストールできない件

deploygate

アプリのテストするならdeploygateでしょうーってことで
iphoneでは使っていたんですが、
titaniumで作ったアプリがなぜかandroidだと動かない。。
というかgoogle playでもアップデートは出来てもそこからダウンロードの際に失敗する・・・

なんだこれは! ってことで調査を致しました。

原因

「SHA256withRSA がダメで、 SHA1withRSAでないとダメ」ってやつで、
普通にtitanium studioでパブリッシュしちゃうとSHA256withRSAでできちゃうので
google play経由でインストールできない === deploygateでもできない
ってことでした。
なので、これさえ解決すればgoogle playでもdeploygateでもうまくいく!

対処方法

対処は簡単で、
一旦普通にパブリッシュした後、
コマンドラインから

1: "【jarsignerへのパス】\jarsigner.exe" "-sigalg" "SHA1withRSA" "-digestalg" "SHA1" "-keystore" "【あなたのkeystoreへのパス】.pem" "-storepass" "キーストアのパスワード" "-signedjar" "さっきパブリッシュしたapk" "さっきパブリッシュしたapk" "keystoreのalias"

2: 【android-sdkへのパス】\tools\zipalign -v 4 "さっきパブリッシュしたapk" "作成するAPKファイルの名前"

を順番に叩くだけです。
2を叩いてできるAPKでならdeploygate も google play でも通ります。

それにしても

ググってもこれ余り出てこないんだけどなんでなんでしょうか。
特定のバージョンのみ発生するわけじゃないのに
結構クリティカルにめんどくさいと思うんですが詰まってる人少ないのかな。

参考にしたサイト

Titanium Mobileで公開用Androidアプリを作成する手順まとめ
Titanium Studio/SDK/CLI 3.2.0 で「パッケージファイルに正しく署名されていません」

Leave a Reply