React-native集成CodePush热更新ios篇----------小白的天堂

React-native集成CodePush热更新ios篇
首先请移步React-native集成CodePush热更新android篇(https://blog.csdn.net/qq_41457238/article/details/106118779),根据教程注册CodePush账号,创建应用获取Staging和Production的key。
并在js中集成好codepush部分
开始ios端集成
1.首先确保rn项目能正常启动
2.执行yarn add react-native-code-push安装codepush库(根据自己RN版本来安装codepush库)
React-native集成CodePush热更新ios篇----------小白的天堂_第1张图片
3.rn0.6版本之前需要执行:react-native link react-native-code-push;rn0.6之后的版本会自动link项目,不需要执行此命令
4.使用xcode打开项目,按步骤依次执行,在第五步点击+之后,选择Duplicate "Release Configaration,输入Staging
React-native集成CodePush热更新ios篇----------小白的天堂_第2张图片

5.根据图片步骤到第三步之后,设置Debug和Staging的值为Staging的key,设置Release的值为Production的key。
具体查看key的方法为:code-push deployment ls -k
React-native集成CodePush热更新ios篇----------小白的天堂_第3张图片
6.打开Info.plist文件,在CodePushDeploymentKey中输入$(CODEPUSH_KEY),并修改Bundle versions为三位(例:1.0.0)
在这里插入图片描述
React-native集成CodePush热更新ios篇----------小白的天堂_第4张图片

7.在TARGETS下点击Build Setting ,找到Build Locations,这里需要说明一下,网上很多教程说修改Per-configuration Build Products Path,但是我这里没有这个选项,所以我修改的是Build Productions Path,将Staging的值改为

$(BUILD_DIR)/Release$(EFFECTIVE_PLATFORM_NAME)  

注:之前显示的是build,修改之后显示的是build/Staging-iphoneos
React-native集成CodePush热更新ios篇----------小白的天堂_第5张图片

8.进入Produce->Scheme->Edit Scheme,修改Archive中Build Configuration的值为Release
React-native集成CodePush热更新ios篇----------小白的天堂_第6张图片
9.检查一下AppDelegate.m文件中是否有一下内容(一般link后会自动添加):

#import 

- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
	{
	#if DEBUG	return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBun	dleRoot:@"index" fallbackResource:nil];
	#else
  	return [CodePush bundleURL];
	endif
	}

10.运行项目看下是否成功,能启动成功说明配置没有问题

11.生成bundle文件导入项目:
(1)在项目ios文件夹中新建bundle文件夹
(2)终端命令进入项目根目录执行:

react-native bundle --entry-file ./index.js --bundle-output ./ios/bundle/index.ios.jsbundle --platform ios --assets-dest ./ios/bundle --dev false

(3)在xcode项目右键选择Add File to“your appname”,然后在Copy itmes if needed前面打勾,选择Create folder references,把bundle文件夹导入进来(导入进来之后文件夹是蓝色的即可)
React-native集成CodePush热更新ios篇----------小白的天堂_第7张图片
React-native集成CodePush热更新ios篇----------小白的天堂_第8张图片

12.修改js代码,添加codepush部分代码即可(和android一样)

到此ios端CodePush配置完成,然后提交版本进行测试即可
(本文档为简化版,主要描述ios端的配置,codepush登录注册,js中配置,如何提交更新包到codepush,codepush常用命令请看android篇)
(https://blog.csdn.net/qq_41457238/article/details/106118779)

你可能感兴趣的:(CodePush,热更新,react-native)