React Native打包成APK

前端之家收集整理的这篇文章主要介绍了React Native打包成APK前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

一、生成签名密钥

命令行下输入keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

二、修改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=*****

*****为第一步设置的密钥

三、修改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
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}
...

四、打离线包

离线包就是把RN和你写的js图片等资源都打包放入app,不需要走网络下载

项目根目录下执行react-native bundle --entry-file index.android.js --bundle-output ./android/app/src/main/assets/index.android.jsbundle --platform android --assets-dest ./android/app/src/main/res/ --dev false

参数解释:

--entry-file js入口文件,相对路径或绝对路径
--bundle-output 存储bundle好的文件的路径
-- platform 平台,ios或android
--assets-dest 存储资源引用的目录名
--dev 如果是false,将会禁用警告,并且bundle将会进行压缩

五、生成APK

  • cd到android目录@H_301_10@
  • 运行gradlew assembleRelease生成的APK包在android/app/build/outputs/apk/app-release.apk下@H_301_10@

六、测试安装

gradlew installRelease

七、启用Proguard来减少APK的体积

修改android/app/build.gradle

def enableProguardInReleaseBuilds = true

八、参考链接

1.React Native安卓项目打包APK
2.生成已签名的APK
3.ReactNative打离线包-android篇

猜你在找的React相关文章