使用react-native-code-push插件来实现热更新的时候,会遇到一些问题。下面这个问题就让我差点崩溃了。html
在测试 Production 和 Staging 是否会去检查各自环境下的bundle文件,我就遇到了混乱的问题。react
有时候用 Release 打包出来的app会去检查 Staging 下的bundle文件。通过无数的排除,最终找到了缘由。程序员
由于项目用cocoapods来依赖react-native库,而且我把原来的project下的target删除掉了,而后从新建立了一个target。react-native
编译的时候,系统提示警告:bash
Warning: The Copy Bundle Resources build phase contains this target's Info.plist file 'xxx/Info.plist'.
做为程序员,你懂得。咱们历来不关心warning,只在意crash。因此我就在在上面吃了一个大亏。app
由于项目是根据编译环境自动去肯定codepush的deployment key的,测试
上面的警告就是由于没有找到正确的info.plist的缘由,致使$(CODEPUSH_KEY)的值不肯定。因此就出现了开头所说的测试混乱的问题。ui
Tips:另外,切换编译的scheme后,必须将项目从新clean一遍,这样才能确保不会出现$(CODEPUSH_KEY)的值不肯定的状况。this
解决办法:插件
https://developer.apple.com/library/content/qa/qa1649/_index.html