Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mobile ReactNative-动态包名称/应用程序id_Mobile_React Native_React Native Android_React Native Ios - Fatal编程技术网

Mobile ReactNative-动态包名称/应用程序id

Mobile ReactNative-动态包名称/应用程序id,mobile,react-native,react-native-android,react-native-ios,Mobile,React Native,React Native Android,React Native Ios,我很难理解在构建时在哪里可以更改包名 我目前正在使用react native config来设置所有环境变量。现在,我还想更改我的开发版本的包名,以便一次安装多个版本 例如com.myapp.dev com.myapp.staging 有人知道怎么做吗 编辑:Android wise我可以从引用env文件的gradle文件更改applicationId,但应用程序仍无法启动MainActivity,因为它仍在查找旧的包名 applicationIdSuffix项目.env.get(“APP\u

我很难理解在构建时在哪里可以更改包名

我目前正在使用react native config来设置所有环境变量。现在,我还想更改我的开发版本的包名,以便一次安装多个版本 例如com.myapp.dev com.myapp.staging

有人知道怎么做吗

编辑:Android wise我可以从引用env文件的gradle文件更改applicationId,但应用程序仍无法启动MainActivity,因为它仍在查找旧的包名

applicationIdSuffix项目.env.get(“APP\u ID\u后缀”)


查看他们的文档,您可以按照上面提到的两行操作,

'com.myapp.dev.com.myapp.staging'是一个bundle id

我强烈建议您使用fastlane。project.pbxproj中有三个位置,其中硬编码了您的bundle id(PRODUCT\u bundle\u IDENTIFIER=…)。 此外,在plist文件中还有CFBundleIdentifier字段

Android有点容易控制,但它发生在配置文件中,而不是js中

因此,您可以在fastlane中的Fastfile中创建转换,该转换将在生成操作时更新您的配置


希望,这会有帮助。

既然软件包名称只存在于Android中,那么只有Android的解决方案对您有帮助吗?我不认为你能做到这一点,因为它在iOS中被称为bundle id,但它是相同的概念,不是吗?类似的概念,非常不同的实现。在ios中使用动态捆绑ID要困难得多。无论哪种方式,它都是构建过程中的完全本地解决方案。