I have made a signed apk of an android project. Whenever my client try to run it on the emulator, he faces the following error message:
D:\\Android\\android-sdk-
You can run the Command:
C:\Program Files\Android\android-sdk\platform-tools>adb logcat
It will give you a more detail on which exact file is not signed:
Package has no certificates at entry assets/META-INF/AIR/application.xml; ignoring!
In my case it was because I signed it on a machine running JDK 7. Downgrading to JDK 6 fixed the problem. Thanks java.lang.SecurityException when install apk for the suggestion!
You could check if the client has not disabled installation of unsigned apps in the emulator.
As mentioned by steelbytes, the error INSTALL_PARSE_FAILED_NO_CERTIFICATES
suggests that the APK isn't signed like you think it is.
Run this command to verify which certificate was used to sign the APK:
jarsigner -verify -verbose -certs abc.apk
For each entry in the APK, you should see something like this:
sm 152412 Wed Oct 14 14:16:52 CEST 2009 classes.dex X.509, CN=Meebo, OU=Meebo, O=Meebo, L=Mountain View, ST=California, C=US [certificate is valid from 28/10/08 06:49 to 13/08/82 07:49]
Otherwise, if the APK isn't signed, you'll get the message jar is unsigned
.
As Dan pointed out, check if you're running JDK 7. More info: http://code.google.com/p/android/issues/detail?id=19567
try below code it's worked for me.
Below line run when your jdk version is 6 for singing the apk
H:\Keytool>"C:\Program Files\Java\jdk1.6.0_09\bin\jarsigner.exe" -verbose -keystore donate.keystore "H:\Keytool\yourapkName.apk.apk" donate.keystore
Below line run when your jdk version is 7 for singing the apk
H:\Keytool>"C:\Program Files\Java\jdk1.7.0_21\bin\jarsigner.exe" -verbose -keyst
ore denote.keyStore "H:\Keytool\yourapkName.apk" denote.keyStore -digestalg SHA1 -sigalg MD5withRSA