Build Unsigned APK with Gradle

后端 未结 4 1832
粉色の甜心
粉色の甜心 2020-12-02 11:00

Currently I\'m trying to learn Gradle to build Android APKs. How to set an option in gradle to build an unsigned APK?

相关标签:
4条回答
  • 2020-12-02 11:31

    You don't have to set any option, just run the usual task:

    $ gradle assemble
    

    This will generate two files in project/build/apk/

    app-debug-unaligned.apk 
    app-release-unsigned.apk
    
    0 讨论(0)
  • 2020-12-02 11:31

    To generate an unsigned apk do the following:

    • define a signingConfig with empty configuations like this:

      signingConfigs{
          unsigned{
              storePassword = ""
              keyAlias = ""
              keyPassword = ""
          }
      }
      
    • define in the buildTypes for your release Version with the unsigned Configuration:

      buildTypes{
          release{
              signingConfig signingConfigs.unsigned
          }
      }
      

    I get this from the adt-dev group, where Xavier Ducrohet write:

    The current behavior is to check that the signing config is fully configured(*) and if it is, it generates a signed APK, otherwise an unsigned APK.

    (*) fully configured right now means the value for store, alias and passwords are present, but does not include that the keystore is present.

    UPDATE 2013-12-19

    As withoutclass mentioned this doesn't work with the gradle plugin version 0.6.3.

    Anyway it's possible to generate an unsigned APK with gradle: just let the signingConfig entry of a flavor or buildType empty. It should look like this:

    productFlavors{
        // with this config you should get a "MyProject-flavorUnsigned-release-unsigned.apk"
        flavorUnsigned{
            versionCode = 9
            packageName defaultPkgName
        }
    }
    
    buildTypes{
        // with this config you should get a "MyProject-release-unsigned.apk"
        release{
            packageNameSuffix '.release'
        }
    }
    
    0 讨论(0)
  • 2020-12-02 11:32

    just assign null to signingConfig

    android {
      buildTypes {
        debug {
          signingConfig null
        }
      }
    }
    
    0 讨论(0)
  • 2020-12-02 11:43

    If you want to make a build type act that is unsigned (just like a debug build), do the following:

    myBuildType {
        initWith debug
        ...
    }
    
    0 讨论(0)
提交回复
热议问题