Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to solve "Key was created with errors:"

The JKS keystore uses a proprietary format. It is recommended to migrate to PKCS12 which is an industry standard format using "keytool -importkeystore -srckeystore -destkeystore -deststoretype pkcs12"

I am getting this type of error with android studio 3.4 (32-bit version) at the time of generating the key, but when I am generating the same source code to apk in another laptop with android studio 3.4 (64-bit version). It works fine in 64-bit laptop and android studio.

enter image description here

like image 819
Govind Avatar asked May 20 '19 06:05

Govind


3 Answers

I encountered the same problem today and it seems that Android wants us to migrate our keys from the JKS proprietary format to the PKCS12 format (as shown in the warning). To do this, you need to use the keytool, which comes with Android Studio.

1. Locate keytool.exe

The keytool.exe is usually located in the folder C:\Program Files\Android\Android Studio\jre\bin. If you cannot find the keytool there, then you have to search for it.

2. Navigate to the jre folder with the Windows cmd

In Windows, open the cmd and type:

cd C:\Program Files\Android\Android Studio\jre\bin

Of course, if your keytool.exe is stored in another location, you need to enter the correct path after cd

3. Change the keystore format

In the cmd you already navigated to the folder containing the keytool.exe, so now you can enter the following command into the cmd:

keytool -importkeystore -srckeystore your_keystore_destination\your_keystore_file.jks -destkeystore your_keystore_destination\your_keystore_file.jks -deststoretype pkcs12

Don't forget to change

your_keystore_destination\your_keystore_file.jks

with your correct path. In your example it would be

D:\App Collection\App1 All in one Collection\keystorefile.jks

Note:

If you sepcified different passwords for the keystore and for the key, then you need to add -destkeypass your_key_password to the command in step 3!

like image 71
Leon Avatar answered Nov 14 '22 23:11

Leon


The following command worked for me on Mac while opening the terminal from the folder where your keyStore file is located:

keytool -importkeystore -srckeystore YOURKEYSTOREFILENAME -destkeystore YOURKEYSTOREFILENAME.p12 -srcstoretype JKS -deststoretype PKCS12
like image 41
Stefan Avatar answered Nov 14 '22 23:11

Stefan


I just ignored this error and used the key generated. I could upload my app without any difficulty.

like image 2
Regis_AG Avatar answered Nov 15 '22 00:11

Regis_AG