[React Native]使用App Center CLI发布CodePush更新--iOS简易版

面向

用RN开发iOS的小伙伴,而且想使用RN的热更新功能,又不想在一大堆文档里翻来覆去的,能够看看这个简易版。以为不错的话能够点个赞或关注。附上详细版react

主要步骤

  1. 安装App Center CLI: npm install -g appcenter-clinpm

  2. 建立App Center账户或使用appcenter login命令经过CLI登陆。这将启动一个浏览器,要求您使用GitHub或Microsoft账户进行身份验证。通过身份验证后,它将建立一个“连接”到您的GitHub / MSA身份的CodePush账户,并生成一个访问密钥,您能够将其复制/粘贴到CLI中以便登陆。react-native

  3. 在部署更新以前,您必须使用如下命令使用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 listbash

  4. 使用CodePush,应用程序自动进行两次部署(Staging和Production)。在App Center中,您必须使用如下命令自行建立它们:app

appcenter codepush deployment add -a <ownerName>/<appName> Staging
appcenter codepush deployment add -a <ownerName>/<appName> Production
复制代码
  1. 建立部署后,您可使用这两种部署访问部署密钥,用于配置两种部署环境。 appcenter codepush deployment list --displayKeyspost

  2. 安装RNPM测试

    步骤 说明
    安装 $ npm install rnpm -g
    安装依赖 若是要安装依赖项并在一次运行中连接它:$ rnpm install <name>
    连接依赖 若是您已经安装了模块(但未连接),请运行:$ rnpm link
  3. 安装插件(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
  4. 基本使用以下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
复制代码

而后就能够看效果啦。

转载请注明出处。

相关文章
相关标签/搜索