android 打包
引用文章:React Native Mac 下打包Android APK
进入项目运行下面代码,生成keystore文件
keytool -genkeypair -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
“my-release-key.keystore“ 签名的名称
“my-key-alias ” 签名别名
有效期为10000天
按提示填写也可以直接回车跳过
在当前目录下就可以看到新增一个my-release-key.keystore
文件,把文件搬到下面目录:
在android/app/build.gradle这个文件里面找到下面属性并添加对应的keystore和密码
修改安装包名称: android/app/src/main/res/values/strings.xml
打包命令:
进入android文件夹,运行 ./gradlew assembleRelease
建议在package.json里面添加命令 "build_android": "cd android && ./gradlew assembleRelease"
打包完成的apk路径 ==> android/app/build/outputs/apk/release/
打包过程可能会遇到一些插件版本过低问题,下列一些常见解决方案:
react-native-picker:verifyReleaseResources node_module 找到文件夹 react-native-picker/android/build.gradle文件
android {
compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig {
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
Configure project :react-native-picker WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'. node_module 找到文件夹 react-native-picker/android/build.gradle文件
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.facebook.react:react-native:+'
}
Task :aliyun-oss-react-native:verifyReleaseResources FAILED node_module 找到文件夹 aliyun-oss-react-native/android/build.gradle文件
android {
compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig {
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
}
lintOptions {
abortOnError false
}
}
Configure project :aliyun-oss-react-native WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.
node_module 找到文件夹 aliyun-oss-react-native/android/build.gradle文件
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.facebook.react:react-native:+'
}
IOS 打包
IOS打包需要在xcode配置授权证书和账号登录,完成配置之后按以下操作即可:
工程构建存档
- 把模式选择为构建模式
- xcode -> product -> Archive
打出安装包
- xcode -> window -> organizer -> distribute app -> development -> next > app thinning(选择全部 all) -> next * 2 -> export(一般打包在桌面)
安装包到手机-手机连上电脑
- xcode -> window -> devices and simulators
把ipa文件拉到以下位置即可