React Native安卓实现更新下载、安装
16lz
2021-01-26
使用ReactNative开发,APP免不了需要更新的功能,iOS直接使用Linking跳转App Store即可,而Android则略显麻烦,需要通过封装Native Modules去调用Android原生DownloadManager来实现下载,
Demo下载地址:https://github.com/zengDeveloper/ReactNative_AndroidDownload
1、创建功能类DownloadApk继承自ReactContextBaseJavaModule,将方法暴露给js调用
2、创建类DownloadApkPackage 继承自ReactPackage接口,用于注册Native Modules,使得js上能够引入调用。
3、创建类DownLoadBroadcastReceiver继承BroadcastReceiver,用于接收处理下载的文件。
4、在AndroidManifest.xml中注册广播监听配置
<receiver android:name="com.andriodTest.DownLoadBroadcastReceiver"><intent-filter><action android:name="android.intent.action.DOWNLOAD_COMPLETE"/>intent-filter>receiver>
5、在MainApplication.java文件的getPackges()中注册DownloadApkPackage
new DownloadApkPackage();
以上便实现了更新下载安装包,并在下载完成后调起安装器的功能
5、调用
import {NativeModules} from 'react-native';NativeModules.DownloadApk.downloading("http://bos.pgzs.com/sjapp91/msoft/20180507456/23/official_website6.1.0.370.apk","91zhushou.apk");
如果遇到状态栏闪一下而没有下载任务的时候,可以去手机的下载中心去检查是不是下载失败了,下载失败的话,那就替换链接吧
更多相关文章
- Android中将View的内容保存为图像的方法
- Android之WebView和js交互-调用失败的看这里
- Android(安卓)Audio stream type
- Android(安卓)Camera系统
- Android(安卓)Camera Framework Stream(二)
- Android(安卓)ListView的OnItemClickListener详解
- 【android】 Android(安卓)动画cancle后 view隐藏
- 关于Android键盘遮挡
- [Android(安卓)Traffic] 根据网络类型更改下载模式