插件文檔的使用
http://microsoft.github.io/code-push/docs/getting-started.html
https://www.npmjs.com/package/cordova-plugin-code-push#installmode
https://my.oschina.net/u/783079/blog/674924
step1: 安裝
終端安裝code-push-cli
sudo npm install -g code-push -d
step2:注冊(cè) 選擇github 獲取 key,寫入到終端
![Paste_Image.png](http://upload-images.jianshu.io/upload_images/1764965-f827a9523190bcea.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
step3:創(chuàng)建新的code-push 應(yīng)用
創(chuàng)建android的應(yīng)用昌简。code-push app add myapp_android
┌────────────┬───────────────────────────────────────┐
│ Name │ Deployment Key │
├────────────┼───────────────────────────────────────┤
│ Production │ FVqEweF8etZPuHTtUZ6p1xVIKOkHNkA7m31RM │
├────────────┼───────────────────────────────────────┤
│ Staging │ o28jGrUvqf2LT81MvXf2FbC_K7SyNkA7m31RM
創(chuàng)建ios的應(yīng)用部默。code-push app add myapp_ios
Successfully added the "myapp_ios" app, along with the following default deployments:
┌────────────┬───────────────────────────────────────┐
│ Name │ Deployment Key │
├────────────┼───────────────────────────────────────┤
│ Production │ 0pUQJMvToiqK94DymbNqTt3zDqKtNkA7m31RM │
├────────────┼───────────────────────────────────────┤
│ Staging │ jTr9klk_n8oxthmnRPimUCTFx3PyNkA7m31RM │
step4:安裝cordova插件
如果項(xiàng)目不存在,則ionic start newproject 称近,并安裝cordova第队。
bower install ngCordova 安裝 ngCordova
index.html 添加:
<script src="lib/ngCordova/dist/ng-cordova.js"></script>
<script src="cordova.js"></script>
cordova plugin add cordova-plugin-code-push
step5:配置config.xml 文件
將獲取的staging的key替換。
<platform name="android">
<preference name="CodePushDeploymentKey" value="YOUR-ANDROID-DEPLOYMENT-KEY" />
</platform>
<platform name="ios">
<preference name="CodePushDeploymentKey" value="YOUR-IOS-DEPLOYMENT-KEY" />
</platform>
<access origin="*" />
step6: ionic plugin list 查看插件的安裝列表 是否包含(code-push 和Whitelist)
step7:app.js 修改代碼
$ionicPlatform.ready(function () {
//其他代碼
window.codePush.sync(
function (syncStatus) {
switch (syncStatus) {
// Result (final) statuses
case SyncStatus.UP_TO_DATE:
navigator.notification.alert("軟件又有所更新啦刨秆。", null, '提示', '棒棒的');
("軟件又有所更新啦凳谦。", null, '提示', '棒棒的');
break;
case SyncStatus.ERROR:
navigator.notification.alert("軟件自動(dòng)更新失敗,退出應(yīng)用后衡未,重新打開尸执。", null, '提示', '我知道了');
break;
}
},
{
updateDialog: false, installMode: InstallMode.IMMEDIATE
}
);
//其他代碼
})
step8: 代碼添加到code-push
sudo code-push release-cordova myapp_android android