我试图弄清楚如何更改 ReactNative 应用程序名称。我设备上安装的 APK 只是“App”,带有 Android 图标。我怎样才能改变这个?
我尝试更改 package.json 并重新运行 react-native upgrade 但它没有更新 AndroidManifest.xml
生成器不会覆盖位于 android/app/src/main/res/values/
中的 strings.xml
文件,因此您必须手动更改 app_name
变量
安卓版
修改 app.json 文件中的 displayName
修改android/app/src/main/res/values/strings.xml中的app_name
然后一一运行这些命令
cd android
./gradlew clean
cd ..
react-native run-android
对于 iOS
修改项目目标中的显示名称(常规选项卡)
https://i.stack.imgur.com/PYp4A.png
display name
displayName
对应于 app.json
中的键 name
试试 react-native-rename 这个 npm 包会简化这个过程
This package assumes that you created your react-native project
using react-native init.
注意:此包不会尝试正确重命名构建工件,例如 ios/build 或 Cocoa Pod 安装目标。重命名项目后,您应该清理、构建并重新安装第三方依赖项,以使其以新名称正常运行。
// in project directory
npx react-native-rename <newName>
首先:在您的 react-native 项目目录中打开 app.json
文件。而且,只需替换此文件中 displayName
json 属性的值。例如:
{
"name": "SomethingSomething",
"displayName": "My New App Name"
}
对于 Android 应用:打开 strings.xml
文件,将 <string name="app_name">
标记的值替换为您的新应用名称。例如:
<string name="app_name">My New App Name</string>
对于 iOS: 打开 info.plist
,将 <key>CFBundleDisplayName</key>
后的值替换为您的应用名称。例如:
<key>CFBundleDisplayName</key>
<string>My New App Name</string>
卸载您之前安装在设备上的应用程序。在项目主目录中使用 npm install ,在 ios 文件夹目录中运行 pod install 命令。现在,只需在您的设备中安装应用程序。
我为 android 执行此操作的方式(hacky,但它有效)只是更改了字符串 app_name
字段
android/app/src/main/res/values/strings.xml
它会将您安装的 android 应用程序的名称更改为您输入的任何值。
更新 2021 React 原生版本:0.64.0
Android
查找并打开以下文件并根据需要进行更改。 \android\app\src\main\res\values\strings.xml
<resources>
<string name="app_name">My App</string>
</resources>
app.json
{
"name": "MyApp",
"displayName": "My App"
}
iOS
找到并打开 \ios\YourAppName\Info.plist
并根据需要进行更改。
注意:如果您的名字有空格,请使用  
而不是空格.
<key>CFBundleDisplayName</key>
<string>My App</string>
我发现,如果您想同时更改应用名称和包名称(即重命名整个应用),则需要执行以下步骤:
确保在 android/ 和 ios/ 子文件夹中没有任何宝贵的东西(非生成的、手动复制的资源)。
删除 android/ 和 ios/ 文件夹。
将 package.json 中的“名称”条目更改为新名称。
更改 index.android.js 和 index.ios.js 中的应用名称: AppRegistry.registerComponent('NewAppName', () => App);
运行 react-native upgrade 以重新生成平台子文件夹。
如果您有链接资源(如自定义字体等),请运行 react-native 链接。
如果您有其他生成的资源(如应用程序图标),请运行脚本来生成它们(例如 yo)。
最后,在每台设备上卸载旧应用程序并运行新应用程序。
create a repo test branch first
。
react-native-git-upgrade
。但我无法使用 yarn
运行它。我的项目不使用 npm
,我也不想全局安装它。所以,试图找出我的选择。到目前为止,react-native-git-upgrade
在 CLI 中失败
react-native upgrade
不再生成平台子文件夹。
如果您只要求 Android 这里是解决方案
修改 /app.json
文件中的 displayName
修改android/app/src/main/res/values/strings.xml
中的app_name
然后一一运行这些命令
cd android
gradlew clean
cd ..
react-native run-android
name
必须在 app.json
中定义,但我有它?
如果您的 android 文件夹中没有任何珍贵的东西,您可以删除该文件夹,然后运行 react-native upgrade
,然后运行 react-native android
。这些将重新创建 AndroidManifest.xml 以及必要的文件和文件夹。 (在 Windows 10 中试用 0.18)
对于 android/app/src/main/res/values/strings.xml 我的 Android 应用程序
对于 ios 只需在 xCode 选择项目选项卡中打开它,一般只需重命名即可。
只需更改位于的 <string name="app_name"> 'NEW_APP_NAME' </string>
[project_dir]/android/app/src/main/res/values/strings.xml
注意:推荐
反应本机重命名
Paul Nyondo 可能会影响 MainApplication.java 文件,不要使用它!
你可以试试这个
将 app.json 中的 displayName 更新为新名称 删除 ios/ 和 android/ 目录 运行 react-native 弹出 运行 react-native 链接
在更改应用程序名称之前获取代码的备份,然后,转到以下路径并将您的应用程序名称替换为新的应用程序名称,然后再更改一个文件 app.json E:***\android\app\src\main\res \values\strings.xml
<resources>
<string name="app_name">New Name</string>
</resources>
应用程序.json
{
"name": "oldName",
"displayName": "New Name"
}
简单的方法
项目 > 安卓 > 应用 > 主 > 资源 > 风格
然后更改应用名称
首先创建项目的完整备份,包括节点模块(以便将来恢复图标/照片..等)
将 app.json 中的 name 和 displayName 更新为新名称 将 app 文件夹重命名为与应用名称相同 删除 ios/ 和 android/ 目录 删除 package.json 中的 ndoe 模块 更新名称(您必须在您的 import 和 require() 中使用新名称代码。例如: import {x} from 'NewAppName/src/api') watchman watch-del-all rm -rf /tmp/haste-map-react-native-packager-* rm -rf /tmp/metro-bundler- cache-* restart pc sudo npm install react-native injection restore icons/images react-native link restart pc run app 注意:您可能需要手动设置。就我而言,SplashScreen
将我在 android/app/src/main/res/values/strings.xml 中的应用名称更改为:
<resources>
<string name="app_name">My App</string>
</resources>
并使用 npx react-native run-android 重新运行
更改 react-native 应用程序的名称
1.打开 ./android/app/src/main/java/[多个文件夹]/MainActivity.java
@Override
protected String getMainComponentName() {
return "NameOfTheApp";
}
打开 android/app/src/main/res/values/strings.xml NEW APP NAME Change Name in App.json 和 package.json。
4.对于干净的android项目运行以下命令
cd android &&./gradlew clean
不定期副业成功案例分享