Android中Application的onCreate多次调用问题

2023-11-03

http://blog.csdn.net/peidonghui/article/details/46043943

版权声明:本文为博主原创文章,未经博主允许不得转载。

1 问题描述:一个Android应用需要为一个service单独开一个进程以完成与服务器交互的逻辑,同时在Application对象的onCreate方法中会执行对象的初始化操作,最主要的是有一个轮询线程,经测试发现,应用耗电十分严重。经过测试发现,是service的进程中也跑着那个轮询线程,这样在网络环境不好的情况下,频繁的请求网络激活设备,会损耗大量的电量;


2 问题原因:每个android应用都要运行在一个虚拟机上,当应用配置了两个进程时,其实是有两个虚拟机在运行,一个前台的应用进程,一个service后台进程,每个进程对应一个application对象,所以当应用配置了多个进程的时候,application对象的onCreate方法就会执行多次,所以如果在application的onCreate方法中开启轮询或者初始化大量数据时,其实是要做出区分的处理的;


3 解决问题:我们已经知道每个进程对应一个application对象,为了避免浪费资源,我们可以在application中通过进程的名称来区分具体应该加载哪些资源,执行哪些具体逻辑。

获取进程名称的方法:

    private String getCurProcessName(Context context) {
        int pid = android.os.Process.myPid();
        ActivityManager activityManager = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
        for (ActivityManager.RunningAppProcessInfo appProcess : activityManager.getRunningAppProcesses()) {
            if (appProcess.pid == pid) {
                return appProcess.processName;
            }
        }
        return "";
    }


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android中Application的onCreate多次调用问题 的相关文章

随机推荐

  • 动态修改el-input样式;动态修改elmentUI元素样式;css变量

    场景 正常我们动态修改div元素的样式 使用 style和 class即可 但是我们想要动态修改element的组件样式时候 例如el input字体颜色 由于el input的样式嵌套很深 我们需要修改的实际是 el input inne
  • arxiv文章下载速度慢解决方法

    arxiv文章下载速度慢解决方法 一 arxiv网站作用 参考知乎链接 Arxiv是一个免费张贴和下载预印本的网站 最初用于高能物理和粒子物理学家之间的交流 如今已经发展到了物理学的各个领域 且延伸到了物理 数学 非线性科学 计算机科学 数
  • autoscan、aclocal、automake和autoconf区别【转】

    转自 https blog csdn net renhui1112 article details 96480535 autoscan 扫描源代码以搜寻普通的可移植性问题 比如检查编译器 库 头文件等 生成文件configure scan
  • Git-2-网络仓库使用

    本文内容介绍 需要连接到远程网络 并实现远程网络的同步 远程网络库最常见的是GitHub 是国外的服务器 用户最多 网络库中的资源最多 网络可能会不稳定 这里采用国内的网络仓库Gitee码云 使用中文界面 比较适合初学者使用 0 首先介绍下
  • 2023华数杯A题 隔热材料的结构优化控制研究(论文+代码)

    目录 问题一 问题2 问题3 离子群算法代码 Matlab 离子群算法代码 python
  • CTF学习-eric靶机练习:使用git tools获取敏感目录,提权

    Kali渗透测试 靶场练习eric 实验 Kali的IP 192 168 1 11 不同的机器配置不同 靶机IP 192 168 1 6 动态ip 操作步骤 靶机下载 https www vulnhub com entry sp eric
  • 【Windows10+wsl2+Ubuntu20.04】安装nvidia驱动问题

    使用windows命令行工具可以顺利查看nvidia smi 但在Ubuntu中执行命令行nvidia rmi后显示 Failed to initialize NVML GPU access blocked by the operating
  • [4G+5G专题-141]: 终端 - 测试仪表详解

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 123070605 目录 第1章 本章在
  • Unity Shader入门精要第3 章 Unity Shader 基础

    Unity系列文章目录 文章目录 Unity系列文章目录 前言 一 Unity Shader 概述 二 使用步骤 1 3 1 2 Unity 中的材质 2 Unity 中的Shader 3 Unity Shader 的基础 ShaderLa
  • python 时间加8小时后的时间

    eta temp one arrival encode utf 8 fd datetime datetime strptime eta temp Y m dT H M SZ 加8后的时间eta fd datetime timedelta h
  • sudo提权漏洞cve-2023-22809

    1 影响版本 Sudo 1 8 0 1 9 12p1均受影响 2 sudo V查看当前sudo版本 3 exp usr bin env bash Exploit Title sudo 1 8 0 1 9 12p1 Privilege Esc
  • Python网络爬虫:爬取CSDN热搜数据 并保存到本地文件中

    hello 大家好 我是wangzirui32 今天我们来学习如何爬取CSDN热搜数据 并保存到Excel表格中 开始学习吧 学习目录 1 数据包抓取 2 编写代码 1 数据包抓取 打开CSDN首页 再打开检查 或为审查元素 各大浏览器不同
  • STDOUT_FILENO stdout

    STDOUT FILENO表示标准输出 STDERR FILENO表示标准出错 使用时需要加头文件
  • ViewPager(一屏多页、无限滑动、自动切换)

    一 简介 前段时间在腾讯视频中看到一个效果 是一个广告轮播 然后一屏还显示了多页 看着这个效果看着还不错 就自己实现了下 国际惯例先上效果图 如下 虽然界面比较简陋 但是功能是全的 分割线 二 原理 实现如上效果需要两个功能 一屏多页 无限
  • Spark编程基础期末复习

    选择题 1 spark 的四大组件下面哪个不是 D A Spark Streaming B Mlib C Graphx D Spark R 2 下面哪个端口不是 spark 自带服务的端口 C A 8080 B 4040 C 8090 D
  • 30是什么意思_农村俗语“30要想,40要戒,50要数,60要放”什么意思?有道理吗...

    请您在阅读本文前点击右上方的 关注 以后您就可以每天免费收到 农夫也疯狂 分享的关于农村大小事 文 农夫也疯狂 中国的文化博大精深 而农村文化一样影响深远 其也是传统文化中的重要部分 在过去绝大多数的农村人都没有念过什么书 但是却能明白很多
  • 【大数据存储技术】实验2:MongoDB数据库的部署和操作

    目录 1 实现MongoDB单实例的部署 1 1 安装MongoDB Ubuntu版本 22 04 LTS 1 1 1 查看Ubuntu版本 1 1 2 使用Ubuntu命令安装 1 2 启动MongoDB 验证状态 1 3 测试Mongo
  • 五. SpringCloud Alibaba Sentinel 自定义降级

    目录 一 简单解释 二 SentinelResource 注解详解 三 SentinelResource 设置异常降级方法 三 SentinelResource 降级方法与业务接口的解耦 一 简单解释 在前面配置限流 熔断降级时 可以针对u
  • linux网络编程(一)

    1 linux的网络模型 linux使用的网络模型是TCP UP四层网络模型 主要由应用程序 传输层 网络层 网络接口层组成 与OSI七层模型不同 但是又相互对应 它们之间关系如下图 OSI模型的应用层 表示层 会话层对应着TCP IP模型
  • Android中Application的onCreate多次调用问题

    http blog csdn net peidonghui article details 46043943 版权声明 本文为博主原创文章 未经博主允许不得转载 1 问题描述 一个Android应用需要为一个service单独开一个进程以完