微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

原文地址:https://www.jb51.cc/react/303143.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐