Android Apk添加签名注意事项

1.先参照Android Studio中创建keystore生成指定的证书文件。

2.在app/build.gradle文件中增加signingConfigs字段:如下所示:

build.gradle

Vim

1

2

3

4

5

6

扫描二维码关注公众号,回复: 2921871 查看本文章

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

apply plugin: 'com.android.application'

android {

    compileSdkVersion 21

    buildToolsVersion "21.1.0"

    defaultConfig {

        applicationId "com.test.example"

        minSdkVersion 14

        targetSdkVersion 21

        versionCode 1

        versionName "1.0"

    }

    signingConfigs {

        debug {

            File strFile = new File("../../Keystore/Debug/debug.jks")

            storeFile file(strFile)

            storePassword "storeDebug1234567890"

            keyAlias "debugkey"

            keyPassword "aliasDebug1234567890"

            //println strFile.absolutePath;

        }

        release {

            File strFile = new File("../../Keystore/Release/release.jks")

            storeFile file(strFile)

            storePassword "storeRelease1234567890"

            keyPassword "keyRelease1234567890"

            keyAlias "releasekey"

            // println strFile.absolutePath;

        }

    }

    

    buildTypes {

        release {

            signingConfig  signingConfigs.release

            runProguard false

            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

        }

    }

}

注意

1.storeFilestorePasswordkeyAliaskeyPassword缺一不可,都必须填写,并且填写正确。

如果没有填写keyAlias,则签名时候会报告Android-APK signing error : Failed to read key from keystore

密码不正确的时候,会报告java.security.UnrecoverableKeyException: Cannot recover key
This exception may result from the fact that you had provided a key password that was different from the keystore password

2.对于Release配置,在buildTypes中必须指定

signingConfig

Shell

1

signingConfig signingConfigs.release

否则,会出现

Shell

1

Error: The apk for your currently selected variant(app-release-unsigned.apk) is not signed. please specify a signing configuration for this variant(release)

3.signingConfigs必须在buildTypes前面声明,否则会出现找不到配置选项的错误。

猜你喜欢

转载自blog.csdn.net/pkx1993/article/details/81352054