react-native-upgrade-android
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的更多相关文章
- React Native For Android 架构初探
版权声明:本文由王少鸣原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/171 来源:腾云阁 https://www.qclo ...
- React native 之android的图标和启动图片
哎哎呀呀,上篇说到了react native的IOS的图标和启动图片的设置,其实最主要的是尺寸!相应的尺寸设定好了以后就不会报错了! ok~这篇说的是React native的android的图标和启 ...
- 【React Native开发】React Native For Android环境配置以及第一个实例(1)
年9月15日也公布了ReactNative for Android,尽管Android版本号的项目公布比較迟,可是也没有阻挡了广大开发人员的热情.能够这样讲在2015年移动平台市场上有两个方向技术研究 ...
- React Native for Android 学习
前言 Facebook 在2015.9.15发布了 React Native for Android,把 JavaScript 开发技术扩展到了移动Android平台.基于React的React Na ...
- React Native for android 项目驱动教程
第一节 搭建开发环境 第二节 显示页面标题 第三节 实现页面布局 # React native是什么? React Native,是颠覆性的移动开发技术.它使用js开发,又是原生应用,不同于Hybri ...
- React Native for Android应用名及图标修改
应用开发完了,总不能顶着MyProject和小机器人图标就发布了吧?在发布之前,有多处需要修改的地方.今天我们来全面的看一下 应用ID 俗称PackageName,或APP ID.注意,在gradle ...
- react native 之 Android物理返回键
基本用法 根据文档,安卓back键的处理主要就是一个事件监听: BackAndroid.addEventListener('hardwareBackPress', this.onBackPressed ...
- React Native for Android 热部署图片自己定义方案
情景 热部署时,我们期望升级包中包括js代码与图片资源. bundle的热部署网上已经有两种方案了,一种是用反射,一种是利用RN自带函数.将bundle初始化时直接放到指定文件夹下,之后通过替换bun ...
- 混合开发的大趋势之一React Native与Android联调
转载请注明出处:王亟亟的大牛之路 先安利,有空我都会更,看到的好东西都会放进来:https://github.com/ddwhan0123/Useful-Open-Source-Android 公司某 ...
- React Native for Android on Windows 配置开发安装总结
配置开发安装总结(由于当前react-native更新较快,目前是针对2015年11月底时的reacti-native android for windows版本,有些内容可能过时) 官方的安装指导在 ...
随机推荐
- ZOJ1008
题目: ZOJ 1008 分析: 重排矩阵, 虽然题目给的时间很多, 但是要注意剪枝, 把相同的矩阵标记, 在搜索时可以起到剪枝效果. Code: #include <bits/stdc++.h ...
- MVC或WebAPI发布后报错404问题的总结
在MVC项目或者webAPI项目发布之后有时会发生404错误.针对这种错误的解决办法: 解决办法1(不推荐):在webconfig中 <system.webServer> 节点下 添加 & ...
- python学习:一
第三章:实践题作业 1.编写一个名为 collatz()的函数,它有一个名为 number 的参数.如果参数是偶数,那么 collatz()就打印出 number // 2, 并返回该值.如果 num ...
- Java_异常以及处理
目录 JAVA异常 异常的处理机制 自定义异常 写了一天的bug,来try...catch...finally了解一下.异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. ...
- selenium+python编写自动化脚本时,定位frame中对象操作
在web应用中经常会出现frame嵌套的应用,假设页面上有A,B两个frame,其中B在A内,那么定位B中的内容则需要先到A,再到B.switchTo().frame方法可以把当前定位的主题切换到fr ...
- 依赖背包——cf855C好题
比较裸的依赖背包,但是想状态还是想了好久 转移时由于边界问题,虽然可以倒序转移,但当容量为0|1的时候,由于有初始值的存在 很难再原dp数组上进行修改,所以额外用tmp数组来保存修改后的值 #incl ...
- php 通过curl header传值
下面是自己整理的通过curl header传值 方式是post $url = 'http://www.***.com';//此处为传值需要访问的地址 $header = array('token:J ...
- Linux 高阶命令进阶(一)
Linux 高阶命令进阶 (一)输出重定向 1. > :正确覆盖输出,会覆盖掉原先的文件内容 把文本写入文档中 # vim test ...
- SQL增删改语句
一,插入数据 1.使用 insert ...values 语句插入单行或多行元组数据 insert into 表名 (列名,列名,...,列名) values 值 表名:指被插入数据的表名 列名: ...
- SQL注入——知表名不知列明情景下查询数据
场景 有某些情况,可以查找到表名,但查找不到列名. MySQL < 5 或 web过滤 information_scema 详解 select `1` from (select 1,2,3,4, ...