React-Native Code-Push 最新接入配置指南

1. code-push 官网申请账号

点此申请账号

2. react-native 中安装 react-native-code-push

npm install --save react-native-code-push
or
yarn add react-native-code-push

3. ios 配置

官方配置链接

1, 在项目根目录下命令行运行 cd ios && pod install && cd … 进行 ios pod 安装
2, 在AppDelegate.m文件,添加一个CodePush头的导入语句

#import <CodePush/CodePush.h>

在这里插入图片描述

3, 在AppDelegate.m文件找到
return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
替换为
return [CodePush bundleURL];

在这里插入图片描述

4, 配置 Deployment key (注:此处教程将会和官方有出入,此步骤提前进行根据运行环境进行动态配置,方便后续进行开发。若有疑问可先安排官网进行配置测试功能)

多环境配置图文教程

注: 可能存在的问题,进行Release运行时可正常更新,但是Staging版本时,会出现报错,无法正常build成功。
1,尝试重新进行pod install操作
2, xcode → product → clean build folder
tips: 若还是无法build成功,尝试重新运行几次。

注:需要生成release/releaseStaging apk 进行测试,切勿直接运行 android studio

4. android 配置

官方配置链接

1, 在 android/settings.gradle 中新增如下语句
include ':app', ':react-native-code-push'
project(':react-native-code-push').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-code-push/android/app')

在这里插入图片描述

2, 在 android/app/build.gradle 中找到

apply from: “…/…/node_modules/react-native/react.gradle”

新增如下语句

apply from: "../../node_modules/react-native-code-push/android/codepush.gradle"

在这里插入图片描述

3, 更新 MainApplication.java 文件

找到 new ReactNativeHost 中重写 getJSBundleFile 方法

// 1. Import the plugin class.
import com.microsoft.codepush.react.CodePush;

public class MainApplication extends Application implements ReactApplication {

    private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
        ...

        // 2. Override the getJSBundleFile method in order to let
        // the CodePush runtime determine where to get the JS
        // bundle location from on each app start
        @Override
        protected String getJSBundleFile() {
            return CodePush.getJSBundleFile();
        }
    };
}
4, 配置 Deployment key (注:此处教程将会和官方有出入,此步骤提前进行根据运行环境进行动态配置,方便后续进行开发。若有疑问可先安排官网进行配置测试功能)

多环境配置图文教程

注:需要生成release/releaseStaging apk 进行测试,切勿直接运行 android studio

5. React-Native 使用插件

在组件中进行注册

import codePush from "react-native-code-push";

class MyApp extends Component {
}

MyApp = codePush(MyApp);

在方法中进行注册


import codePush from "react-native-code-push";

let MyApp: () => React$Node = () => {
}

MyApp = codePush(MyApp);

更多详见官方文档

6,code-push 基本命令

生成Staging包

code-push release-react MyApp-Android android --t 1.0.0 --des “更新日志内容”

生成Production包

code-push release-react MyApp-Android android --t 1.0.0 --dev false --d Production --des “更新日志内容” --m true

Staging 最新的codepush代码到 Production(你申请的Android/ios的名字)

appcenter codepush promote -a /MyApp-Android -s Staging -d Production

删除 android/ios 生产环境下的部署包 MyApp-Android/MyApp-IOS (你申请的Android/ios的名字)

code-push deployment clear MyApp-Android/MyApp-IOS Production
code-push deployment clear MyApp-Android/MyApp-IOS Staging
例如: code-push deployment clear MyApp-Android Productio

code-push常用命令

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值