react-native 在生成項目的時候户辫,會有一個項目名麻裁,也即是包名箍镜。我們可以通過修改app名稱和生成不同的key簽名來生成不同的app,但是由于包名沒有修改煎源,新的 app 是不能和原有的app安裝在一個手機(jī)上色迂,于是我們必須修改包名,才能利用原有的項目工程和 JavaScript 代碼 生成一個新的 app手销。
修改工程名需要修改這幾個地方:
- 修改 android/app/build.gradle 里的 applicationId歇僧,為新包名,譬如:com.xxx.yyy.myProject
- 修改 android/app/src/main/AndroidManifest.xml 里的package锋拖,為新包名诈悍,譬如:com.xxx.yyy.myProject
- 在 android/app/src/main/java/com 下根據(jù)新包名中多出的兩級xxx.yyy新創(chuàng)建兩級新目錄,譬如:android/app/src/main/java/com/xxx/yyy
- 將之前android/app/src/main/java/com下的myProject文件夾剪切到android/app/src/main/java/com/xxx/yyy下面
- 打開android/app/src/main/java/com/xxx/yyy/myProject/MainActivity.java兽埃,修改第一行為:package com.xxx.yyy.myproject;最后的
@Override
protected String getMainComponentName(){
return "新的包名"
}
- 修改 index.js 里 AppRegistry.registerComponent('新的包名', () => App);
- 生成新的 key 簽名写隶,修改 app 名稱(非必須),打包,完成讲仰。
本文也發(fā)表于所在團(tuán)隊開源技術(shù)文檔慕趴,語雀_Rocket