How can I Re-sign an android apk. I referred to this answer Can I re-sign an .apk with a different certificate than what it came with?
but got stuck with Android Manifest.xml missing error.
Unpack/ Unzip the zip file. Delete the META-INF folder. Repack/ Rezip the folder again to a zip file. Rename the zip file again to an apk file.
Sign an APK You can include this information in two different ways: Specify a KeyStore file using the --ks option. Specify the private key file and certificate file separately using the --key and --cert options, respectively. The private key file must use the PKCS #8 format, and the certificate file must use the X.
In the menu bar, click Build > Generate Signed Bundle/APK. In the Generate Signed Bundle or APK dialog, select Android App Bundle or APK and click Next. Below the field for Key store path, click Create new. On the New Key Store window, provide the following information for your keystore and key, as shown in figure 2.
Sign the APK with jarsigner This technique involves signing the APK file using the jarsigner command from the Java SDK. The jarsigner tool is provided by the Java SDK. When using jarsigner, it is important to sign the APK first, and then to use zipalign.
Friends I found a work around to this . Resign Android Apk using android default debug.keystore.
**Open the apk in the winzip browser and not by unzipping to a folder.
Delete META-INF
folder .zipping again is not required.**
Jarsigner -verbose -keystore debug.keystore yourapk.apk aliasname
**Example** `-Jarsigner –verbose –keystore debug.keystore androiddebugkey.`
jarsigner -verify yourapk.apk
zipalign -v 4 yourapk.apk signedapk.apk
Step 1 and 2 was where I was doing wrong which gave me androidmanifest xml missing error.
Downgrading to JDK 1.6.0_43 solved the problem.
To sign apks using JDK 1.7 one has to use these keywords "-sigalg MD5withRSA -digestalg SHA1"
Reason: As of JDK 7, the default signing algorithim has changed, requiring you to specify the signature and digest algorithims (-sigalg and -digestalg) when you sign an APK.
Command: jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore [keystorefile] [originalapk] alias_name
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With