react native 之打包 Android的apk

react native 打包成Android 的apk安装包有两种方式,第一种方式是利用 Android studio 打包这里就不接介绍了。第二种是利用 react native 自身项目打包

1.生成签名

再一个空文件夹打开CMD,运行以下命令

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

 

 

 2.按提示输入口令(自定义,要记住)、姓氏、组织单位、城市、天国代码(86)

 

 

 3.将生成后的 my-release-key.keystore(我这里改成了app.keystore了) 放到你工程中的android/app文件夹下

 

 

 4.打开编辑项目目录下的android/app/build.gradle文件,添加如下的签名配置(signingConfigs )

复制代码
signingConfigs {
        // 将默认的debug 注释或者去掉都可以
        // debug {
        //     storeFile file('debug.keystore')
        //     storePassword 'android'
        //     keyAlias 'androiddebugkey'
        //     keyPassword 'android'
        // }
        release {
              keyAlias 'my-key-alias' //别名
              keyPassword 'zkr123521' //密钥密码 之前设置秘钥口令
              storeFile file('app.keystore') //my-release-key.keystore文件的绝对路径
              storePassword 'zkr123521' //存储密码
         }
    }
复制代码

5.修改android/app/build.gradle 中buildTypes 配置

复制代码
buildTypes {
        debug {
            signingConfig signingConfigs.debug
        }
        release {
            // Caution! In production, you need to generate your own keystore file.
            // see https://reactnative.dev/docs/signed-apk-android.
            signingConfig signingConfigs.release //将默认的debug 改成 release
            minifyEnabled enableProguardInReleaseBuilds
            proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
        }
    }
复制代码

6.修改android/app/build.gradle 中的enableProguardInReleaseBuilds属性

/**
 * Run Proguard to shrink the Java bytecode in release builds.
 */
def enableProguardInReleaseBuilds = true //将默认的false 改成true

7.进入 react native 的andriod 目录 运行

gradlew assembleRelease     //windows命令
./gradlew assembleRelease   //在macOS和Linux系统

 

 8.执行完毕后在    你的项目下\android\app\build\outputs\apk\release中可以找到 app-release.apk

 

 

 本人亲自填的坑!

posted @   创客未来  阅读(1650)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示