Android

From havefunsoft wiki
Revision as of 20:23, 13 August 2016 by Skalogryz (talk | contribs) (start the page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Signing Apk

Whenever you're using a jarsigner, don't rely on its default setting to sign the apk properly. Check google Sign apk page and use the suggested settings by default.

My original script looked like this:

"%jdkbindir%\jarsigner" -verbose ^
 -keystore bin\LCLDebugBKKey.keystore -keypass 123456 -storepass 123456 ^
 -signedjar bin\%APP_NAME%-unaligned.apk bin\%APP_NAME%-unsigned.apk LCLDebugBKKey

It worked fine on my Android device, but failed on others. What I was missing (per Google's page) is "sigalg" and "digestalg" modifiers:

"%jdkbindir%\jarsigner" -verbose ^
 -sigalg SHA1withRSA ^
 -digestalg SHA1 ^
 -keystore bin\LCLDebugBKKey.keystore -keypass 123456 -storepass 123456 ^
 -signedjar bin\%APP_NAME%-unaligned.apk bin\%APP_NAME%-unsigned.apk LCLDebugBKKey

Debugging such issues could be tricky. Since the only thing that a user sees is a message "App Not Installed". A savvy person will not be able to give you log to see packager error. I had to use one of the online Android test services (testdroid) to get the log