React Native的版本升级插件(仅是android), react-native版本需要0.17.0及以上

如何安装

1.首先安装npm包

npm install react-native-upgrade-android --save

2.link

自动link方法~ npm requires node version 4.1 or higher

npm link

link成功命令行会提示

npm info Linking react-native-upgrade-android android dependency

手动link~(如果不能够自动link)

#####Android

// file: android/settings.gradle
... include ':react-native-upgrade-android'
project(':react-native-upgrade-android').projectDir = new File(settingsDir, '../node_modules/react-native-upgrade-android/android')
// file: android/app/build.gradle
... dependencies {
...
compile project(':react-native-upgrade-android')
}

android/app/src/main/java/<你的包名>/MainActivity.java中,public class MainActivity之前增加:

import com.lenny.modules.upgrade.UpgradeModule;

如果react-native-版本 <0.18.0 .addPackage(new MainReactPackage())之后增加:

.addPackage(new UpgradPackage())

如果react-native-版本 >=0.18.0 在new MainReactPackage()之后增加

,new UpgradePackage()

如何使用

引入包

import Upgrade from 'react-native-upgrade-android';

API

Upgrade.init()

// 使用前必须初始化

类似如下:

componentDidMount() {
const {
isSet,
} = this.props;
if (Platform.OS !== 'ios') {
Upgrade.init();
}
}

WeiboAPI.startDownLoad(downloadUrl, version, fileName)

开始下载

// 参数信息
downloadUrl: 下载apk地址(绝对地址)String
version: 要下载的版本号 (防止重复下载)String
fileName: 保存的文件名 String

添加监听

类似如下:

componentDidMount() {
const {
isSet,
} = this.props;
if (Platform.OS !== 'ios') {
Upgrade.init();
DeviceEventEmitter.addListener('progress', (e) => {
if (e.code === '0000') { // 开始下载
this.setState({
isLoading: true,
});
} else if (e.code === '0001') { // 下载中,更新进度条
this.setState({
fileSize: e.fileSize,
downSize: e.downSize,
});
} else if (e.code === '0002') { // 下载完成
this.setState({
fileSize: e.fileSize,
downSize: e.downSize,
});
}
});
}
} Github地址:https://github.com/lennyup/react-native-upgrade-android

react-native-upgrade-android的更多相关文章

  1. React Native For Android 架构初探

    版权声明:本文由王少鸣原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/171 来源:腾云阁 https://www.qclo ...

  2. React native 之android的图标和启动图片

    哎哎呀呀,上篇说到了react native的IOS的图标和启动图片的设置,其实最主要的是尺寸!相应的尺寸设定好了以后就不会报错了! ok~这篇说的是React native的android的图标和启 ...

  3. 【React Native开发】React Native For Android环境配置以及第一个实例(1)

    年9月15日也公布了ReactNative for Android,尽管Android版本号的项目公布比較迟,可是也没有阻挡了广大开发人员的热情.能够这样讲在2015年移动平台市场上有两个方向技术研究 ...

  4. React Native for Android 学习

    前言 Facebook 在2015.9.15发布了 React Native for Android,把 JavaScript 开发技术扩展到了移动Android平台.基于React的React Na ...

  5. React Native for android 项目驱动教程

    第一节 搭建开发环境 第二节 显示页面标题 第三节 实现页面布局 # React native是什么? React Native,是颠覆性的移动开发技术.它使用js开发,又是原生应用,不同于Hybri ...

  6. React Native for Android应用名及图标修改

    应用开发完了,总不能顶着MyProject和小机器人图标就发布了吧?在发布之前,有多处需要修改的地方.今天我们来全面的看一下 应用ID 俗称PackageName,或APP ID.注意,在gradle ...

  7. react native 之 Android物理返回键

    基本用法 根据文档,安卓back键的处理主要就是一个事件监听: BackAndroid.addEventListener('hardwareBackPress', this.onBackPressed ...

  8. React Native for Android 热部署图片自己定义方案

    情景 热部署时,我们期望升级包中包括js代码与图片资源. bundle的热部署网上已经有两种方案了,一种是用反射,一种是利用RN自带函数.将bundle初始化时直接放到指定文件夹下,之后通过替换bun ...

  9. 混合开发的大趋势之一React Native与Android联调

    转载请注明出处:王亟亟的大牛之路 先安利,有空我都会更,看到的好东西都会放进来:https://github.com/ddwhan0123/Useful-Open-Source-Android 公司某 ...

  10. React Native for Android on Windows 配置开发安装总结

    配置开发安装总结(由于当前react-native更新较快,目前是针对2015年11月底时的reacti-native android for windows版本,有些内容可能过时) 官方的安装指导在 ...

随机推荐

  1. 虚拟机上的centos7链接不上网络: activation of network connection failed

    报错: 重启网络也不行: 解决: 1.打开网络配置文件: $vi /etc/sysconfig/network-scripts/ifcfg-ens33  (可以参照这里的描述,找到这个文件https: ...

  2. .Net Core项目管理----Git的一些基本使用方法

    使用git的基本操作 1.Git的克隆 git clone https://XXXXXXXXXXXXXXXXXXXXX 2.拉取 git pull 3.查询状态 git status 4.添加 git ...

  3. 逆向 make 打包错误解决方案 make: *** [internal-package] Error 2

    修改deb.mk文件第6行的压缩方式为gzip vim $THEOS/makefiles/package/deb.mk _THEOS_PLATFORM_DPKG_DEB_COMPRESSION ?= ...

  4. 【玩转开源】BananaPi R2 —— 第四篇 Openwrt Luci 初探

    什么是Luci呢?先直观的感受一下,打开web浏览器,输入R2的网关地址,然后出现了一个web登录界面,这个就是Openwrt Luci的应用. 那么到底什么是Luci呢?在这里我先给大家一个公式:L ...

  5. [Linux][转载]Curl命令详解

    命令:curl 在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,是一款很强大的http命令行工具,当处在无界面的服务器上的时候,利用curl下载上传文件是较为方便的事情. 语法 ...

  6. Macbook pro从购买服务器到搭建服务器环境(1)

    查看进程命令:ps -ef |grep *** ps -ef | grep nginx ps -ef | grep mysql ps -ef | grep mongops -ef | grep uws ...

  7. unity打包exe中的资源管理

    给美术和产品用unity做一些exe工具,会频频遇到导入导出资源的情况. 首先所有的文件应该放在StreamingAssets文件夹下, 如果需要动态替换贴图,这样美术只要替换default.png就 ...

  8. Weblogic记录

    有些坑还是要去踩,上来就docker一脸懵逼. 1.应用 https://www.cnblogs.com/xdp-gacl/p/4140683.html (1)安装 环境: 64位server2016 ...

  9. win10自带的防火墙Windows Defender

    Windows Defender防火墙(别名:windows守卫者)是微软公司自主研发的一款基于windows自身保护的一款系统. Windows Defender可以对系统进行实时监控,对于Wind ...

  10. RSP小组——团队冲刺博客一——(领航)

    RSP小组--团队冲刺博客一--领航 冲刺日期:2018年12月10日 团队目标 经过团队讨论,我们最新确定的α版本所需实现内容如下: 1.实现游戏代码的实现 2.在Android Studio上实现 ...