用RN开发iOS的小伙伴,而且想使用RN的热更新功能,又不想在一大堆文档里翻来覆去的,能够看看这个简易版。以为不错的话能够点个赞或关注。附上详细版。react
安装App Center CLI: npm install -g appcenter-cli
npm
建立App Center账户或使用appcenter login
命令经过CLI登陆。这将启动一个浏览器,要求您使用GitHub或Microsoft账户进行身份验证。通过身份验证后,它将建立一个“连接”到您的GitHub / MSA身份的CodePush账户,并生成一个访问密钥,您能够将其复制/粘贴到CLI中以便登陆。react-native
在部署更新以前,您必须使用如下命令使用App Center建立应用程序: appcenter apps create -d <appDisplayName> -o <operatingSystem> -p <platform>
浏览器
例子:
appcenter apps create -d MyApp-Android -o Android -p React-Native
appcenter apps create -d MyApp-iOS -o iOS -p Cordova
复制代码
贴士:将你要操做的应用程序设置为
当前应用程序
使用,省事。appcenter apps set-current <ownerName>/<appName>
。 这样能够把appcenter codepush deployment list -a <ownerName>/<appName>
能够将命令缩短为appcenter codepush deployment list
bash
使用CodePush,应用程序自动进行两次部署(Staging和Production)。在App Center中,您必须使用如下命令自行建立它们:app
appcenter codepush deployment add -a <ownerName>/<appName> Staging
appcenter codepush deployment add -a <ownerName>/<appName> Production
复制代码
建立部署后,您可使用这两种部署访问部署密钥,用于配置两种部署环境。 appcenter codepush deployment list --displayKeys
post
安装RNPM测试
步骤 | 说明 |
---|---|
安装 | $ npm install rnpm -g |
安装依赖 | 若是要安装依赖项并在一次运行中连接它:$ rnpm install <name> |
连接依赖 | 若是您已经安装了模块(但未连接),请运行:$ rnpm link |
安装插件(iOS)ui
步骤 | 说明 |
---|---|
步骤一 | 自React Native v0.27起,rnpm link 已经合并到React Native CLI中。在项目中简单地运行:react-native link react-native-code-push |
步骤二 | 系统将提示您输入要使用的部署密钥。若是您尚未它,能够经过运行code-push deployment ls <appName> -k 检索,或者您能够选择忽略它(经过简单地点击<ENTER> )并在之后添加它。首先,咱们建议您只使用Staging 部署密钥,以即可以端到端地测试CodePush 。 |
基本使用以下this
import codePush from "react-native-code-push";
export default class App extends React.Component {
componentDidMount() {
codepush.sync({ installMode: codepush.InstallMode.IMMEDIATE });
}
render() {
return (
<View style={{ backgroundColor: 'white', height: 100, marginTop: 100 }}>
<TouchableOpacity onPress={this.onButtonPress}>
<Text style={{ color: 'red' }}>Check for updates</Text>
</TouchableOpacity>
<Text style={{ marginTop: 30 }}>测试文本</Text>
</View>
)
}
onButtonPress() {
codepush.sync({
updateDialog: true,
installMode: codepush.InstallMode.IMMEDIATE
});
}
}
let codePushOptions = { checkFrequency: codepush.CheckFrequency.MANUAL }
App = codepush(codePushOptions)(App)
复制代码
最后,在设备上编译一下,这里我只试过真机,而后你能够把‘测试文本’改成‘测试文本更改’,而后发布更新 appcenter codepush release-react
没有指定当前应用程序的用这个:
appcenter codepush release-react -a <ownerName>/<appName>
appcenter codepush release-react -a <ownerName>/MyApp-iOS
appcenter codepush release-react -a <ownerName>/MyApp-Android
复制代码
而后就能够看效果啦。
转载请注明出处。