Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-58310

Can I use the android signing plugin to sign android app bundles?

    • Icon: New Feature New Feature
    • Resolution: Unresolved
    • Icon: Critical Critical
    • android-signing-plugin
    • None

      We are migrating to the new android app bundle format and I'd like to keep signing my aab files with the same signing plugin. Is it possible with existing signing plugin implementation?

          [JENKINS-58310] Can I use the android signing plugin to sign android app bundles?

          Artemy Kilin created issue -

          To be quite honest, I don't know.  Do you have a build you can try already?  I'll look into it when I get a few spare moments in the next couple of days.

          Robert St. John added a comment - To be quite honest, I don't know.  Do you have a build you can try already?  I'll look into it when I get a few spare moments in the next couple of days.

          Robert St. John added a comment - - edited

          Some brief research unfortunately reveals that the plugin cannot sign AABs, currently. I can probably get around to implementing a solution that uses Java's JarSigner API. Pull requests are welcome as well, if you're so inclined. In the interim, you should be able to use Java's jarsigner command-line utility and the Credentials Binding Plugin to sign your AABs. Just be aware of some of the security concerns that go along with that approach. You could also enroll in Google Play's app signing, as the Android docs describe, if that's an option for you.

          Robert St. John added a comment - - edited Some brief research unfortunately reveals that the plugin cannot sign AABs, currently. I can probably get around to implementing a solution that uses Java's JarSigner API. Pull requests are welcome as well, if you're so inclined. In the interim, you should be able to use Java's jarsigner command-line utility and the Credentials Binding Plugin to sign your AABs. Just be aware of some of the security concerns that go along with that approach. You could also enroll in Google Play's app signing, as the Android docs describe , if that's an option for you.

          Artemy Kilin added a comment -

          Thank you for you reply, I'll choose the most proper option. I hope one day the plugin will be able to sign aab though.

          Artemy Kilin added a comment - Thank you for you reply, I'll choose the most proper option. I hope one day the plugin will be able to sign aab though.
          Robert St. John made changes -
          Issue Type Original: Task [ 3 ] New: New Feature [ 2 ]

          Oleg Kistrovskikh added a comment - - edited

          Hi ! This issue is very actual now, because all android apps needs to move on app bundle soon.

          I tried to sign aab with plugin and got error below

          FATAL: [SignApksBuilder] error signing APK ...aab
          com.android.apksig.apk.MinSdkVersionException: Unable to determine APK's minimum supported Android platform version: APK is missing AndroidManifest.xml
          	at com.android.apksig.ApkSigner.getMinSdkVersionFromApk(ApkSigner.java:706)
          	at com.android.apksig.ApkSigner.sign(ApkSigner.java:242)
          	at com.android.apksig.ApkSigner.sign(ApkSigner.java:179)
          	at org.jenkinsci.plugins.androidsigning.SignApksBuilder$SignApkCallable.invoke(SignApksBuilder.java:510)
          	at org.jenkinsci.plugins.androidsigning.SignApksBuilder$SignApkCallable.invoke(SignApksBuilder.java:464)
          	at hudson.FilePath$FileCallableWrapper.call(FilePath.java:3069)
          	at hudson.remoting.UserRequest.perform(UserRequest.java:211)
          	at hudson.remoting.UserRequest.perform(UserRequest.java:54)
          	at hudson.remoting.Request$2.run(Request.java:369)
          	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
          	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
          	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
          	at hudson.remoting.Engine$1.lambda$newThread$0(Engine.java:97)
          	at java.lang.Thread.run(Thread.java:748)

          Oleg Kistrovskikh added a comment - - edited Hi ! This issue is very actual now, because all android apps needs to move on app bundle soon. I tried to sign aab with plugin and got error below FATAL: [SignApksBuilder] error signing APK ...aab com.android.apksig.apk.MinSdkVersionException: Unable to determine APK's minimum supported Android platform version: APK is missing AndroidManifest.xml at com.android.apksig.ApkSigner.getMinSdkVersionFromApk(ApkSigner.java:706) at com.android.apksig.ApkSigner.sign(ApkSigner.java:242) at com.android.apksig.ApkSigner.sign(ApkSigner.java:179) at org.jenkinsci.plugins.androidsigning.SignApksBuilder$SignApkCallable.invoke(SignApksBuilder.java:510) at org.jenkinsci.plugins.androidsigning.SignApksBuilder$SignApkCallable.invoke(SignApksBuilder.java:464) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:3069) at hudson.remoting.UserRequest.perform(UserRequest.java:211) at hudson.remoting.UserRequest.perform(UserRequest.java:54) at hudson.remoting.Request$2.run(Request.java:369) at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at hudson.remoting.Engine$1.lambda$newThread$0(Engine.java:97) at java.lang. Thread .run( Thread .java:748)

          I'll see if I can carve out some time to look into signing AABs in the near future.

          Robert St. John added a comment - I'll see if I can carve out some time to look into signing AABs in the near future.

          restjohn hello !

          Do you have news about bundles signing ?

          Thank you 

          Oleg Kistrovskikh added a comment - restjohn hello ! Do you have news about bundles signing ? Thank you 
          Oleg Kistrovskikh made changes -
          Priority Original: Major [ 3 ] New: Critical [ 2 ]

          Is this issue related to https://github.com/jenkinsci/android-signing-plugin/pull/2. Is there anybody available to review this PR?

          Thanks a lot!

          Lorenzo Orsatti added a comment - Is this issue related to https://github.com/jenkinsci/android-signing-plugin/pull/2 . Is there anybody available to review this PR? Thanks a lot!

            restjohn Robert St. John
            artemykilin Artemy Kilin
            Votes:
            3 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated: