React Native App版本升级方案解析
源码已开源到Github,地址请点击:react-native-upgrade欢迎大家star,fork.....
App版本升级想必大家都不陌生。原生开发中App升级方式有很多种,Android和iOS也不尽相同。大致区别如下: (1)iOS中由于不能从App Store之外下载ipa文件进行安装,所以在iOS环境下唯一的更新方式就是提醒用户,然后跳转到App Store商店下对应App进行更新。多数情况下,iPhone在Wifi网络下都会自动静默完成版本更新。 (2)Android的方式则大有不同,Apk由于不受App市场及手机限制,可以随意安装Apk文件,所以大部分情况下都会避开市场下载,直接从自己服务器下拉最新Apk进行更新,所以也就出现了首页发现新版本、版本检测等一些功能。关于Android的版本更新,可以看我之前的一篇博客:Android实现App版本自动更新 React Native实现版本更新,需要依赖原生开发环境的支持。例如Android中需要做下载提示,进度提示,下载完成后的跳转安装。iOS需要与App Store中的版本做比较,以及跳转到App Store更新。为了简便,遂将其封装成library,供大家参考使用。
一、功能介绍Android: (1)版本检测 (2)版本下载 (3)进度提示 (4)下载安装
iOS: (1)版本检测 (2)跳转App Store
二、配置【Android平台 】 1. 将upgrade包拷贝到你的Android项目包目录下。 2. 在AndroidMainfest.xml文件下添加权限和服务配置
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 【 iOS平台 】 将upgrade拷贝到项目目录即可。
三、使用
【Android平台 】
Http.get(Api.api_checkupdate,null,false,(result)=>{ if(result.ok) { // 下载最新Apk NativeModules.upgrademodule.upgrade(this.state.apkUrl); } });
【 iOS
平台 】
NativeModules.upgrade.upgrade('1253360366',(msg) =>{ if('YES' == msg) { //跳转到APP Stroe NativeModules.upgrade.openAPPStore('1253360366'); } else { Toast.show('当前为最新版本'); } }) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ruby-on-rails – 如何使用Capybara结合发现和内部?
- COCOS-3.X事件分发机制-原理
- Pull解析器读取XML文件,及保存数据到xml文件中
- Sqlite insert步骤nullColumnHack字段的含义
- xml – 如何使用Xpath选择具有多个类的元素?
- 【PostgreSQL】PostgreSQL常用备份方法
- Flex 4 List Editable item renderer tab focus
- react 中文文档案例四 (登陆登出按钮)
- TQ2440 u-boot-2012.04.01移植三支持NOR Flash
- as3的swf不能加载含有as2.0脚本以下的swf文件吗?