React Native App版本升级方案解析

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013718120/article/details/77189649


刚创建的React Native 微信公众号,欢迎微信扫描关注订阅号,每天定期会分享react native 技术文章,移动技术干货,精彩文章技术推送。同时可以扫描我的微信加入react-native技术交流微信群。欢迎各位大牛,React Native技术爱好者加入交流!






源码已开源到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('当前为最新版本');
    }
})

猜你喜欢

转载自blog.csdn.net/u013718120/article/details/77189649