Jan*_*Jan 2 android npm reactjs package-name react-native
目前我正面临一个问题,我已经尝试解决了 3 天。我想为我的本机 android 应用程序重命名我的包名称。
因此,为了完全确定我所做的一切都是正确的,我创建了一个新项目并尝试重命名包名称。我这样做是为了确保错误不是来自我的项目,而且我还无法修复我的错误。
我像往常一样初始化了一个新项目:react-native init MyAwesomeProject.
然后我com.myawesomeproject在以下文件中替换为com.awesome.project.
/安卓/应用程序/降压:
android_build_config(
...
package = 'com.awesome.project',
)
android_resource(
...
package = 'com.awesome.project',
)
Run Code Online (Sandbox Code Playgroud)
android/app/src/main/AndroidManifest.xml
package="com.awesome.project"
Run Code Online (Sandbox Code Playgroud)
android/app/build.gradle
defaultConfig {
applicationId "com.awesome.project"
...
}
Run Code Online (Sandbox Code Playgroud)
此外,我已经取代package com.myawesomeproject;与package com.awesome.project;和移动MainActivity.java及MainApplication.java文件,从android/app/src/main/java/com/myawesomeproject/到新的路径android/app/src/main/java/com/awesome/myawesomeproject/。
完成所有这些更改后,我./gradlew clean在我的 android 文件夹中运行,然后执行此命令react-native run-android。
但是,我仍然面临与我在实际项目中面临的完全相同的问题。
> Task :app:compileDebugJavaWithJavac FAILED
/Users/max/Desktop/Max/MyAwesomeProject/android/app/src/main/java/com/myawesomeproject/MainApplication.java:19: error: cannot find symbol
return BuildConfig.DEBUG;
^
symbol: variable BuildConfig
1 error
FAILURE: Build failed with an exception.
Run Code Online (Sandbox Code Playgroud)
另外,我已经尝试将以下代码添加到MainApplication.java文件顶部:
import com.facebook.react.BuildConfig;
但是我已经将代码添加到了MainApplication.java定位中,android/app/src/main/java/com/myawesomeproject就像它在错误输出中所说的那样。如果你这样做,控制台在运行后不会抛出任何错误react-native run-android,但是,应用程序myawesomeproject被安装,如果你尝试打开它,应用程序会崩溃。
这清楚地表明,react 仍在使用错误的路径!
我什至尝试过npm rename 包并运行以下命令:
react-native-rename "project" -b com.project.
甚至这都不能解决我的问题。运行时我仍然遇到完全相同的错误react-native run-android。
你们可以看到问题不是来自我的项目,因为在我建立了一个完全从头开始构建的新项目后,我遇到了完全相同的问题!
我将不胜感激任何形式的帮助!谢谢你们。
重命名时要在多个文件中进行更改。所以它会变得棘手。使用react-native rename使它非常容易。
我只是尝试使用以下方法设置初始项目: react-native init MyAwesomeProject
然后我跑了: npm install react-native-rename -g
然后更改我运行的项目的名称,cd MyAwesomeProject然后是
react-native-rename "project" -b com.awesome.project
然后运行react-native run-android它构建没有错误。
如果您计划手动进行更改,则需要更改很多文件。实际上可能还有更多,具体取决于您添加到项目中的内容。这是更改 vanilla 项目的指南。
在应用程序根
在app.json改变name和displayName成为"project"
在package.json改变name成为"name": "project",
android/settings.gradle
将 更改为rootProject.name您想要的名称:rootProject.name = 'project'
android/app/build.gradle
在默认配置中,将 applicationId 更改为您想要的应用程序 ID,在这种情况下: applicationId com.awesome.project
安卓/应用程序/降压
将android_build_config和 中的包更改为android_resources所需的包,在这种情况下:package = "com.awesome.project",
android/app/src/main/AndroidManifest.xml
将包更改为所需的包名称,在本例中: package="com.awesome.project"
android/app/src/main/res/values/strings.xml
在这种情况下,将应用程序名称更改为所需的应用程序名称 <string name="app_name">project</string>
更新 *.java 文件
这一点比较棘手,因为您必须创建文件夹、移动文件,然后重命名文件内部的部分内容。
android/app/src/main/java/com/
创建一个名为的文件夹,awesome并在该文件夹内创建一个名为的文件夹project
复制MainActivty.java和MainApplication.java从android/app/src/main/java/com/myawesomeproject到最近创建的android/app/src/main/java/com/awesome/project文件夹。
在 the MainActivity.java和MainApplication.javaremane 中,文件顶部的包从package com.myawesomeproject;到package com.awesome.project;
同样在MainActivity.java将getComponentName()函数返回的字符串重命名为"project"
手动操作有点麻烦,但是在 Xcode 中更改包 ID 和应用程序名称很简单。我不会像您刚刚专门针对 Android 要求的那样完成 Xcode 过程。
| 归档时间: |
|
| 查看次数: |
5130 次 |
| 最近记录: |