ReactNative之Android打包APK方法(签名打包发布Release版本的apk安装包)以及趟坑过程


ReacNative---签名打包发布Release版本的apk安装包

 

一、NDK的安装和配置: 【 先保证自己正确配置了所有的 RN 环境,(其中包含android-ndk的配置,如若没有配置请按照以下步骤配置,否则可跳过)】

1、下载NDK,官网链接:https://developer.android.google.cn/ndk/downloads

 

 

 2、安装

  2.1 打开你的SDK Manger安装的路径,新建一个文件 ndk-bundle

 

 

   2.2然后将下载的NDK解压出来的所有的文件都放到该文件夹下即可

 

 

3、配置环境变量

  许多Android项目的编译脚本都会通过NDK_HOME环境变量来调用NDK,因此需要手动新建系统环境变量:

变量名 NDK_HOME 变量名必须严格匹配
变量值 C:\Android\ndk-bundle 需要根据NDK实际的安装路径填写

  为了方便通过命令行启动ndk-build,还可以在系统环境变量Path中追加%NDK_HOME%。

4、如果出现问题,做如下配置:【ndk的版本号到你安装ndk的路径找 C:\Android\ndk-bundle\source.properties】

 

 

 

二、如何发布一个apk【签名打包官网链接:https://reactnative.dev/docs/signed-apk-android

1、先保证自己正确配置了所有的 RN 环境

2、在 cmd 命令行中,运行这一句话 

 keytool -genkeypair -v -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

  此命令提示您输入密钥库和密钥的密码以及密钥的专有名称字段(输入的内容看不到,记得拿小本本记下来)。然后,它将密钥库生成为名为的文件my-upload-key.keystore

  密钥库包含单个密钥,有效期为10000天。别名是您稍后在对应用程序进行签名时将要使用的名称,因此请记住该别名。

  注意:

    • 其中: `my-release-key.keystore` 表示你一会儿要生成的那个 签名文件的 名称【很重要,包找个小本本记下来】
    • `-alias` 后面的东西,也很重要,需要找个小本本记下来,这个名称可以根据自己的需求改动`my-key-alias`
    • 当运行找个命令的时候,需要输入一系列的参数,找个口令的密码,【一定要找个小本本记下来】

             

 

 3、当生成了签名之后,这个签名,默认保存到了自己的用户目录下C:\Users\Administrator\my-upload-key.keystore

 

 4. 将你的签名证书复制到项目根目录 android/app目录下:

 

 

 

 

5. 进入你的项目根目录,编辑文件~/.gradle/gradle.propertiesandroid/gradle.properties,在最后,添加以下内容(替换*****为正确的密钥库密码,别名和密钥密码)

1 MYAPP_UPLOAD_STORE_FILE=my-upload-key.keystore 2 MYAPP_UPLOAD_KEY_ALIAS=my-key-alias 3 MYAPP_UPLOAD_STORE_PASSWORD=*****
4 MYAPP_UPLOAD_KEY_PASSWORD=*****

 

 6、进入你的项目根目录,编辑 android/app/build.gradle文件添加如下代码:

 1 ...  2 android {  3  ...  4  defaultConfig { ... }  5  signingConfigs {  6  release {  7             if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {  8  storeFile file(MYAPP_UPLOAD_STORE_FILE)  9  storePassword MYAPP_UPLOAD_STORE_PASSWORD 10  keyAlias MYAPP_UPLOAD_KEY_ALIAS 11  keyPassword MYAPP_UPLOAD_KEY_PASSWORD 12  } 13  } 14  } 15  buildTypes { 16  release { 17  ... 18  signingConfig signingConfigs.release 19  } 20  } 21 } 22 ...

7. 进入项目根目录下的`android`文件夹,在当前目录打开终端,然后输入`./gradlew assembleRelease`开始发布APK的Release版;

  7.1方法一 : 输入以下命令

./gradlew bundleRelease    #---Linux系统 gradlew bundleRelease #--window系统

//以上执行完后,接着执行以下命令 开始发布APK的Release版
react-native run-android --variant=release

  7.2方法二:直接输入以下命令即可 开始发布APK的Release版

./gradlew assembleRelease #---Linux系统
gradlew assembleRelease  #--window系统


8. 当发行完毕后,进入自己项目的`android\app\build\outputs\apk`目录中,找到`app-release.apk`,这就是我们发布完毕之后的完整安装包;

 

 ps: 也可参考:  https://blog.csdn.net/m0_37686205/article/details/103098592

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM