React Native Code Push

Code Push是微軟提供的一套能夠熱更新React Native的服務。能夠使用微軟的服務器也能夠本身部署服務器。react

 

1.安裝Code Pushnpm

使用命令npm install -g code-push-cli安裝Code Push。react-native

2.註冊Code Push帳號服務器

在終端輸入code-push register就會跳轉到受權網頁,受權完成後,CodePush會顯示你的Access Key,複製輸入到終端便可完成註冊並登錄。app

(若是不輸入code-push logout退出登陸命令,登陸狀態會一直有效)spa

3.在終端輸入code-push app add <appName> <os> <platform>便可完成建立項目。code

4.在要集成的項目輸入npm install --save react-native-code-push下載code-push到項目,而後分別集成到IOS、Android,項目中填寫建立項目的Key。component

5.在React Native根組件componentDidMount中添加更新代碼orm

codePush.checkForUpdate(deploymentKey).then((update) => {
                            if (!update) {
                                Alert.alert("提示", "已經是最新版本--", [
                                    {
                                        text: "Ok", onPress: () => {
                                        console.log("點了OK");
                                    }
                                    }
                                ]);
                            } else {
                                codePush.sync({
                                        deploymentKey: deploymentKey,
                                        updateDialog: {
                                            optionalIgnoreButtonLabel: '稍後',
                                            optionalInstallButtonLabel: '當即更新',
                                            optionalUpdateMessage: '有新版本了,是否更新?',
                                            title: '更新提示'
                                        },
                                        installMode: codePush.InstallMode.IMMEDIATE,

                                    },
                                    (status) => {
                                        switch (status) {
                                            case codePush.SyncStatus.DOWNLOADING_PACKAGE:
                                                console.log("DOWNLOADING_PACKAGE");
                                                break;
                                            case codePush.SyncStatus.INSTALLING_UPDATE:
                                                console.log(" INSTALLING_UPDATE");
                                                break;
                                        }
                                    },
                                    (progress) => {
                                        console.log(progress.receivedBytes + " of " + progress.totalBytes + " received.");
                                    }
                                );
                            }
                    }

6.輸入命令code-push release-react <appName> <platform> [options]便可發佈更新版本。blog

參數包括更新面向的版本號、是否強制更新、發佈到Staging或Production等。

相關文章
相關標籤/搜索