使用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");

如果遇到状态栏闪一下而没有下载任务的时候,可以去手机的下载中心去检查是不是下载失败了,下载失败的话,那就替换链接吧

更多相关文章

  1. Android中将View的内容保存为图像的方法
  2. Android之WebView和js交互-调用失败的看这里
  3. Android(安卓)Audio stream type
  4. Android(安卓)Camera系统
  5. Android(安卓)Camera Framework Stream(二)
  6. Android(安卓)ListView的OnItemClickListener详解
  7. 【android】 Android(安卓)动画cancle后 view隐藏
  8. 关于Android键盘遮挡
  9. [Android(安卓)Traffic] 根据网络类型更改下载模式

随机推荐

  1. Android(安卓)使用xml和java混合编写ui
  2. Android(安卓)APK反编译详解[转]
  3. Android(安卓)开源项目
  4. 使用setContentView的方式更换布局文件从
  5. Failed to fectch URl https://dl-ssl.go
  6. [android] ListView 选中状态的动态改变
  7. android之intent的Flag详解
  8. Android(安卓)ViewPager实例代码介绍2。
  9. 升级Android(安卓)Studio 3.0,报Unable to
  10. Android(安卓)使用MediaPlayer播放本地视