React Native打包apk

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hxy19971101/article/details/81070212

生成一个签名密钥

你可以用keytool命令生成一个私有密钥。在Windows上keytool命令放在JDK的bin目录中(比如C:\Program Files\Java\jdkx.x.x_x\bin),你可能需要在命令行中先进入那个目录才能执行此命令。

进入bin目录下面后执行下列代码:

$ keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

这条命令会要求你输入密钥库(keystore)和对应密钥的密码,然后设置一些发行相关的信息。最后它会生成一个叫做my-release-key.keystore的密钥库文件。

在运行上面这条语句之后,密钥库里应该已经生成了一个单独的密钥,有效期为10000天。--alias参数后面的别名是你将来为应用签名时所需要用到的,所以记得记录这个别名。

注意:请记得妥善地保管好你的密钥库文件,不要上传到版本库或者其它的地方。

在bin目录执行后的结果:

之后在bin目录下会生成一个文件:

 把my-release-key.keystore文件放到你工程中的android/app文件夹下。

3.在android/gradle.properties中加入:

MYAPP_RELEASE_STORE_FILE=my-release-key.keystore

MYAPP_RELEASE_KEY_ALIAS=my-key-alias

MYAPP_RELEASE_STORE_PASSWORD=******

MYAPP_RELEASE_KEY_PASSWORD=******

******换为你刚才输入的口令.

4.在android/app/build.gradle添加如下配置.


android {
...
    defaultConfig {
....
    }
    signingConfigs {
    release {
    storeFile file(MYAPP_RELEASE_STORE_FILE)
    storePassword MYAPP_RELEASE_STORE_PASSWORD
    keyAlias MYAPP_RELEASE_KEY_ALIAS
    keyPassword MYAPP_RELEASE_KEY_PASSWORD
    }}
    splits {
....
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
           ...
        }
    }
  .....
            }
        }
    }
}

5.终端cd 到android目录下.执行命令

./gradlew assembleRelease

等一下终端执行后显示BUILD SUCCESSFUL.

  成功打好了.在项目的android/app/outputs/apk下可见刚才打好的apk包

这样React Native项目的apk文件就生成好了。

react-native清除打包缓存:

gradlew clean

猜你喜欢

转载自blog.csdn.net/hxy19971101/article/details/81070212