用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
複製代碼
而後就能夠看效果啦。
轉載請註明出處。