Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Error when trying to make a signed build in Unity3D

I get this error when I try to make a signed build (apk) for Android in Unity3D:

'Failed to read key *** from store "/Volumes/Work/Developer/Dev_Unity3D/game_development/projects/com/***/Dev_SpaceShooter/Keystores/user.keystore": trusted certificate entries are not password-protected'

I made a keystore and imported my upload-certificate from Google Developer Console in order to create a keystore with the same fingerprint (SHA-1). I need a correctly working signed build in order to use Google Play Services.

The password for the alias is not set. Only the public key is set.

I have almost no experience in doing this so don't blame me for errors I made.

Now how can I get rid of the above mentioned error, please?

Answers

  • Set a password for the alias

  • drpelzdrpelz Member

    The doesn't work. When I try to do this via

    keytool -keypasswd -keystore keystoreFile -alias aliasName

    then I get this error message:

    keytool error: java.lang.Exception: Alias <aliasName> has no key😪

  • via what?

    It's a field in the Player Settings when you build in unity.

    Player Settings -> Publishing Settings


    There's a spot your .keystore file, and a password for the key, and alias. Make an alias, and give it a password. I think you can assign one after an alias is created, but not sure.

  • drpelzdrpelz Member

    I created that keystore via Terminal on the Mac. Then I imported my upload-certificate from Google in order to get the right SHA-1 fingerprint so I can use this keystore for Google Play Services.

    I know I can make a keystore in Unity but it generates a different SHA-1 fingerprint than the one used in my upload-certificate. I want the same fingerprint like the one inside of the upload_certificate. Basically that's all I want but don't know how to do it...

  • Ah, I see. Can you not make a new alias with a password in unity though? Does generating it via terminal not give you a .keystore?

  • drpelzdrpelz Member
    edited July 2020

    Yeah I already made a new keystore in Unity that comes along with an alias. After that I imported my upload-certificate and when I upload it into the Google Developer Console the following error message appears:

    "Hochladen fehlgeschlagen

    Du hast eine APK-Datei hochgeladen, die mit nicht mit dem Upload-Zertifikat signiert ist. Du musst dasselbe Zertifikat verwenden. Das hochgeladene Zertifikat ist mit dieser ID-Datei signiert

    SHA1: FC:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX

    Das Zertifikat, mit dem die hochgeladene APK-Datei signiert ist, weist diese ID-Datei auf:

    SHA1: 3A:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX"

    Sorry for the German text but you can easily translate it via Google. So the problem still persists. The fingerprint-ids are not the same.

  • Right, but don't make a new one. Can you just give unity the .keystore you already generated? Not generated a new one in unity.

  • drpelzdrpelz Member

    Basically yes. You can look for any valid .keystore-file in Unity and use it to sign the .apk-file. So do you think it's better if I generate the keystore-file within Terminal or this app: https://keystore-explorer.org?

  • MouledouxMouledoux Member
    edited July 2020

    Im asking if you tried to use the .keystore you already generated.

    I am aware it is possible to do it in unity, I was asking if you, personally, have tried to look for your .keystore.

  • drpelzdrpelz Member

    Yes.

  • and then did you make a new alias through that, and give it a password?

  • drpelzdrpelz Member

    The alias has no password. There is one public key only. BTW: The user.keystore-file consists of one imported trusted certificate only. Nothing else...

  • MouledouxMouledoux Member
    edited July 2020

    I know the alias has no password

    thats why I said make a new alias.

    a keystore can have multiple aliases


    p.s. I know how keystores work, I have published to GooglePlay before. But I generated my keystores though unity. I know the fundamentals, just not the mechanics of doing it via a Mac command line

  • drpelzdrpelz Member

    One dumb question: How do you create another alias via key tool in Terminal?

  • I do not know the key tools, or how to do it by a terminal.

  • drpelzdrpelz Member

    So I made another alias (=drpelz). I made a key pair and put it into my keystore file. Now what's next?

Sign In or Register to comment.