signing AAB doesn't work?!

Hi,

Since the first forum topics, are there any update to generate AAB files from apps, other than use the Terminal? I mean with other engines like Unity, when I mark there to get a AAB, I get it :)

But even I would use Terminal to sign it, as written on the website in the tutorial for AAB, there might be doesn't work for me.

When I hit in the web publishing "Build AAB", I get the same screen as for building an apk, with the tool "apksigner" (that might be the problem?!) and finally I get an AAB with an output name.

Is that right?

I mean, can the apksigner sign the aab? Not really, right?

Comments

  • adriangomezadriangomez Member, PRO Posts: 440

    I click on Build RC and then click download.

    Once I have the AAB:

    jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore <path to keystore> -signedjar <path and name where I want the signed aab> <path of abb i just downloaded> <key alias>

    This uploads to Google with no problems.

  • MarcoColMarcoCol Member, PRO Posts: 279
    edited December 2022

    Thanks for the feedback.

    So where do you get the jarsigner from? Its from the JDK, right?

    I will check with Build RC. Sure you don't mean to click "Build AAB"?

    Equal which button I select, I get again the same build-screen when build an apk and I get finally an apk!

    And the keystore is the same I usually use for normal apks? Must I not provide the PW in the string in Terminal?

  • adriangomezadriangomez Member, PRO Posts: 440
    • jarsigner is from the JDK but on my machine I guess it is already in the path.
    • I use Build RC. The Build AAB button generates a previous version that is missing Game Analytics. Although I do use it for the Amazon build since the Build RC throws an error when showing Chartboost ads that I need for Amazon deployment.
    • Don't click on sign button. I click on download afterward to download the aab
    • Yes the keystore is the same and the console will prompt for passwords.

    Here is a short video:

    https://youtu.be/lDExCUyv7Vw

  • MarcoColMarcoCol Member, PRO Posts: 279

    Hi,

    that video is golden. THANKS a lot.

    But I run into problems:

    When I type the line with my files in the Terminal, I get the answer, before I was able to type the password for the keystore:

    "only one alias can be specified"

    I checked the line again and again, but it seems to be right. I finish the line as described in the Gamesalad AAB creation manual...

    I downloaded the JDK from the website of Oracle a few days ago...

  • adriangomezadriangomez Member, PRO Posts: 440

    Does your alias have a space? Can you paste what you are trying to type in?

  • MarcoColMarcoCol Member, PRO Posts: 279

    Hi,

    no space. The alias is the same as the name of the keystore (but of course the complete name of the keystore is name.keystore

  • MarcoColMarcoCol Member, PRO Posts: 279
    edited November 2023

    Here is what I try to use:

    jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore /Users/marco/marco.keystore -signedjar SoundboardLite.aab /Users/marco/Downloads/MQ4GMYRVGAYDKLJXGQYDCLJUMEKFKWKFK4GFLE__Soundboard_Lite_unsigned.aab marco

  • adriangomezadriangomez Member, PRO Posts: 440

    The only thing that looks suspicious in your command is that "signedjar" looks like it has an m-dash instead of an n-dash.

  • adent42adent42 Key Master, Head Chef, Executive Chef, Member, PRO Posts: 3,155

    Based on @adriangomez 's msg try this:

    jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore /Users/marco/marco.keystore -signedjar SoundboardLite.aab /Users/marco/Downloads/MQ4GMYRVGAYDKLJXGQYDCLJUMEKFKWKFK4GFLE__Soundboard_Lite_unsigned.aab marco
    

    Also try this to make sure you have the correct alias (this will list your keys / aliases)

    keytool -v -list -keystore /Users/marco/marco.keystore | grep Alias
    

    (And if you decide to paste the response, make sure you don't include the password, since using the grep makes entering the password plaintext on the command line, at least on my mac).


    Finally, which JDK version are you using, that might be an issue (even though it really shouldn't be).

  • MarcoColMarcoCol Member, PRO Posts: 279

    Thanks for your feedbacks.

    It seems, that adriangomez has the right answer. There might be a wrong "-" when copy and pasting it into Terminal.

    AAB creation does work now.

    The app I want to update is an old app. I see in Google, that I have the possibility to upload an apk, because the app is older than 2018. When I do that I get the info, that another certificate was used. But I didn't have the old one. I get also the SHA1 keys (old one and new). So I can use the AAB, but I then must change this App integrity feature and am not sure about it. When I set that will it only be done for this or for all apps?

  • MarcoColMarcoCol Member, PRO Posts: 279

    After a bit of research I found out, that I must create a new app, because I didn't have the old keystore-file.

    So there is no other option, right?

    Without the keystore-file and when in Google Developer console the option of managing the keystore-file(s) is not turn on, I must create a new game, with a different Bundle-ID, right?

    If so, should I then remove the other app from the store, or let it also in? What's your meaning?

  • adent42adent42 Key Master, Head Chef, Executive Chef, Member, PRO Posts: 3,155
  • MarcoColMarcoCol Member, PRO Posts: 279

    I contacted them and the first answer is, that I should create new apps and point in the description of the old apps to the new store page.

    I asked now, if it isn't possible to provide a new keystore as in the link you provide, let's see what they answer.

    I wonder why it might sometimes is possible and in my case not...

Sign In or Register to comment.