react native Android端保持APP后台运行--封装 Headless JS

前些日子在做后台下载时踩了后台运行这个大坑,RN官网文档上面在安卓上提供了Headless JS方法,iOS上暂时没有提供后台运行的方法,不过众所周知,官网上面的文档实在是... 于是在全网一通好搜,终于让我发现了一个将Headless JS封装好了的第三方组件:

react-native-background-job

下面介绍使用方法:

安装

yarn add react-native-background-job

或者

npm install react-native-background-job --save

然后运行:

react-native link react-native-background-job

使用

1. 需在你所需要后台运行的组件内部--类的上方注册后台下载事件

import BackgroundJob from 'react-native-background-job';
//当在安卓下时,开启后台模式,注册后台事件
if(Platform.OS === 'android'){const backgroundJob = {jobKey: "backgroundDownloadTask",
        job: () => {}};
    BackgroundJob.register(backgroundJob);
}

下面才开始是你的类的代码,注册后台事件一定要在类之前:

class BackgroundTask extends PureComponent {}

2. 注册的后台运行事件是全局的,你可以在任何文件的任何地方启动后台运行,不过在其他页面启动后台运行事件需要在其页面导入BackgroundJob:

import BackgroundJob from 'react-native-background-job';

启动后台运行:

BackgroundJob.schedule({jobKey: "backgroundDownloadTask",//后台运行任务的key
    period: 500,                     //任务执行周期
    exact: true,                     //安排一个作业在提供的时间段内准确执行
    allowWhileIdle: true,            //允许计划作业在睡眠模式下执行
    allowExecutionInForeground: true,//允许任务在前台执行
});

具体属性请移步  react-native-background-job

react native Android端保持APP后台运行--封装 Headless JS相关推荐

  1. React Native Android端多环境自动打包

    文章目录 1.技术环境搭建 2.配置Android构建参数. 3.编辑复制文件到指定位置的脚本 4.Jenkins创建工程 5.下载nginx,配置相关参数.HTTPS证书 6.写iOS下载配置文件p ...

  2. Android之Windows下搭建React Native Android开发环境(差不多搞了一天)

    Android之Windows下搭建React Native Android开发环境               穷逼买不起mac,但是他们都说React Native Android只能在mac下面 ...

  3. 基于 React Native 的 58 同城 App 开发实践

    作者简介: 彭飞,58 同城 iOS 客户端架构师.专注于新技术的研发,主要负责 App 端组件化架构以及性能优化,并已推广 React Native 在 58 同城 App 中业务场景的应用.在 M ...

  4. React Native三端融合在沪江的应用实践

    内容来源:2017年3月11日,沪江web前端开发工程师陈达孚在"中生代技术&iTechPlus年度大会(上海)"进行<基于react native三端融合的应用和实 ...

  5. React Native Android 源码框架浅析(主流程及 Java 与 JS 双边通信)

    [工匠若水 http://blog.csdn.net/yanbober 未经允许严禁转载,请尊重作者劳动成果.私信联系我] 1 背景 有了前面<React Native Android 从学车到 ...

  6. React Native 三端同构实战

    WeiboGoogle+用电子邮件发送本页面 0 React Native 三端(Web.iOS.Android)同构是指在不改动原 React Native 的代码下,让其在浏览器中运行出和在 Re ...

  7. React Native三端同构

    React Native三端同构,即iOS.Android.Web共用一套代码,已知React Native已经支持iOS.Android,所以只需要做支持Web的工作就行了. 如何同构 我们可以利用 ...

  8. React Native Android 应用内存使用探究

    本文讲的是React Native Android 应用内存使用探究, 为什么我那台老旧的 Android 手机无法加载图片? 刚开始接触 React Native 应用时,我发现有个现象很奇怪,在 ...

  9. React Native Android入门实战及深入源码分析系列(1)——Hello world

    转载需注明出处:http://blog.csdn.net/minimicall?viewmode=contents 从今天起,我要分析React Native for Android的源码. 本系列主 ...

最新文章

  1. 为品牌管理增加检索名称和状态项
  2. js按钮触发网页提醒_jquery,js页面加载时自动点击触发jq按钮-Go语言中文社区
  3. JAVA时间日期处理类,主要用来遍历两个日期之间的每一天。
  4. robot framework 使用三:他们主动浏览器的兼容性
  5. 计算机VB整除,【原创】VB中的整除运算和转换函数
  6. 虚拟机和linux系统整理??
  7. 【美文赏析】世界上最遥远的距离
  8. VB 判断是否文本文件
  9. Could not initialize English chunker/Could not load file from classpath: ‘/en-token.bin‘
  10. fluidsim win7版本_FluidSIM 5|FluidSIM(液压气动仿真软件)下载v5.0中文免费版 附安装教程 - 欧普软件下载...
  11. vs2017下载教程
  12. tomcat未自动解压war包原因分析
  13. android 代码混淆 反编译,Android的反编译和代码混淆
  14. python blp模型 估计_BLP模型
  15. c语言 sub(),C语言考试试题
  16. 使用低代码开发的图书管理系统如何使用扫条形码实现图书的录入?
  17. DevOps 10大IT管理工具(翻译)
  18. vue3中的beforeEach里面的next函数---刷新页面导致白页
  19. 数学文化——数论之美
  20. java 词典 分词_java分词中 用户自定义词典有什么要求

热门文章

  1. 从写简历,到面试、谈薪酬的那些技巧和防坑指南
  2. 电动牙刷也有国产黑马,竟然比千元大牌还厉害 | 钛空实测
  3. OOD: 我所理解的SOLID原则
  4. iOS Instrument使用之Core Animation(图形性能)
  5. 递归实现数组的扁平化
  6. 如何使用Screenflick在Mac上创建延时屏幕录像?
  7. docker 更改阿里云镜像
  8. 架构师之路16年精选50篇_2011年精选
  9. 如何在模拟器中测试Windows Phone 8的NFC应用
  10. 面试姊妹篇4:常见的Java多线程面试题