APP启动性能优化
一、浅谈APP启动性能优化原因
1、引起性能问题的原因
随着项目不断的快速迭代,往往会造成App启动卡慢现象,因为可能在App主进程启动阶段或者在主界面启动阶段放了很多初始化其他业务的逻辑,而这些业务落地可能一开始并不需要用到;
2、为什么要做启动速度优化
App启动卡慢会影响一个App的卸载率和使用率;
启动速度快会给人一种轻快的感觉,减少用户等待时间;
如果一个App从点击桌面图标到看到主界面花了10秒,请问你能接受么?忍耐不好的估计直接就卸载了,或者没等打开就直接Home键按出去,然后杀进程了;这样一来App卸载率提升了,使用率下降了。所以对于有大量用户的App来说,这些性能细节是很重要的;
APP启动性能优化工具的选择
作为APP的开发者,我使用的一直都是一款友盟+软件,U-APM 是友盟+推出的App稳定性监控、性能监控和云真机测试平台。通过轻量级的集成接入即可拥有实时、可靠、全面的应用崩溃、ANR、自定义异常等捕获能力,及卡顿、启动分析等性能能力,支持多场景、多通道智能告警监控,帮助开发者高效还原异常、卡顿用户的访问路径和业务现场,缩短故障排查时间。
二、分析怎么做启动优化
1、启动过程简单分析
App从点击桌面图标到我们看到App的主界面整个过程中经过了哪些步骤,哪些地方是我们可以优化的地方;
2、从启动过程找出优化点
App启动过程中我们优化的地方包括主进程启动流程和主界面启动流程,主进程启动就是Application的创建过程,主界面启动就是MainActivity的创建过程;
只需要分别对这两个部分进行优化即可:
Application中attachBaContext最早被调用,随后是onCreate方法,尽量在这两个方法中不要有耗时操作;
三、启动优化步骤
1、Application中加入异步线程
是把不必要提前做的操作放到异步线程中去做,也就是我们经常做的异步加载;
2、主页面加入异步线程和延迟加载功能
与Application的优化思路一样,也是封装onSyncLoad和onAsyncLoad方法对现有代码进行一个分类,但是这两个方法的调用时机要晚一点,是在主界面首屏绘制完成的时候调用。这个步骤也需要new一个Thead,属于额外的开销,不过这不影响我们整体性能;
3、态加载布局:主布局文件优化
把主界面中不需要第一次就用到的布局全部使用动态加载的方式来处理,使用ViewStub或者直接在使用时动态addView的方式;
4、主布局文件深度优化
Activity在加载布局的时候,会对整个布局文件进行解析,测量(measure),布局(layout)和绘制(draw),所以设计简单合理的布局尤为重要。几个重要的优化如下:
减少布局层级
减少首次加载View的数量
减少过度绘制
5、页面功能的分模块化和懒加载
一个页面上有很多功能模块,最好每个功能模块都单独的分开,模块之间用接口进行数据沟通;
按需加载所需要的功能,不要打开一个页面都加载所有的功能;
加载完所需要的功能,如果是一次性加载不需要保持在内存中,尽快销毁掉,形成良好的习惯。
APP启动性能优化是一条持续之路,通过优化我们可以了解到影响启动性能的因素有哪些,这样我们平时在编码的过程中就会多注意自己的代码性能。开发者可利用友盟+U-APM对APP启动进行监控,另外友盟+U-APM还提供云真机测试能力,助力开发者从研发测试质量验收到线上问题复现排查,保障应用品质,提升测试效率。在云真机测试期间自动采集崩溃信息,提供详尽的崩溃报告协助筛查,真正实现监控测试全流程深度打通。
win10怎么优化启动项
一、可以用些第三方的系统优化软件来优化,比如说软媒魔方中的优化大师,它就能很好的帮你优化启动项。
二、一些电脑发烧友可以自己动手参照以下教程去优化而不用借助第三方软件。
1、怎样管理开机启动项
与Windows7以及之前的系统不同,在Windows8以及之后的Windows
8.1和Windows10系统中,开机启动项的管理被移到了任务管理器里面。您可以尝试用这种方式进入任务管理器的“启动”标签:
在开始菜单的搜索栏(仅限Win10),或在键盘上按Win和R组合键打开“运行”程序,然后输入以下命令直接打开“启动”标签:
taskmgr
/0
/startup
在“启动”标签里您可以轻松地禁用或启用某个启动项。只需要右键单击该项目,然后点击“禁用”或“启用”;或者单击选中不需要的项目,然后点击右下角的“禁用”或“启用”按钮。
下面我们继续介绍添加或移除Win10系统的开机启动项目的方法。
2、怎样添加或移除当前用户的开机启动项
当前用户的启动项通常都存放在两个位置:注册表和一个特殊的“启动”文件夹。“启动”文件夹是一个非常简单的管理程序的方式。此方法适用于Windows7,Windows8和Windows
8.1以及Windows10,步骤如下:
a、在开始菜单搜索栏里(仅限Win10,Win7),或者在“运行”中输入以下命令:
shell:Startup
这个命令是一个用来直接打开启动文件夹的特殊的Shell命令。
当前用户的“启动”文件夹在这个位置(X为系统盘符,您可根据您的系统盘位置自行置换,一般为C):
X:Urs当前用户名AppDataRoamingMicrosoftWindowsStart
MenuProgramsStartup
在这个文件夹中创建或删除开机启动项的快捷方式,就可以达到添加或者移除开机启动项的效果。删除不用说,若想添加启动项,可以使用新建快捷方式向导(在文件夹空白处单击右键,选择新建-快捷方式)来创建被添加的启动项的快捷方式。
同样,通过注册表编辑器也能实现对开机启动程序的管理(适用于Win7,Win8,Win8.1和Win10),步骤如下:
a、打开注册表编辑器,在开始菜单的搜索栏里或者打开“运行”程序,输入regedit后回车(若出现UAC提示,点击“是”);
b、找到以下键值:
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun
c、你会发现当前用户的开机启动项在此列出,如果要删除一个项目,右键单击该项目后,在下拉菜单中点击“删除”。
如果要添加一个启动项,你需要在空白处单击右键创建一个字符串值(String
Value)并且输入你希望的名称,然后双击这个新建的值,在数值数据里输入你要启动的程序的完整路径,点击确定即可完成。
3、怎样添加或移除所有用户的开机启动项目
这种方法和之前对当前用户的操作方式非常类似,只不过启动文件夹和注册表中的位置和之前稍有不同。
a、若要用“启动”文件夹的方式操作,可以在开始菜单的搜索栏内或者在“运行”窗口内输入以下命令后回车:
shell:Common
Startup
然后就会打开所有用户的“启动”文件夹,路径为(X为系统盘符,您可根据您的系统盘位置自行置换,一般为C):
X:ProgramDataMicrosoftWindowsStart
MenuProgramsStartup
b、若要用注册表方式操作,则要在编辑器内找到以下键值:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun
然后您可以按照上面介绍过的添加或移除当前用户的开机启动项的方式来操作。
win10启动太慢怎么优化启动项
方法/步骤
1、首先,我们打开控制面板,然后选择电源选项。点击选择电源按钮的功能
2、然后点击”更改当前不可用的设置“,红色箭头指的地,然后在”启用快速启动“那项打上勾之后重启。(有很多安装系统后默认都是勾上的,可是有些不起作用,所以,如果已经打勾的请去掉后,重启再勾上)
3、在这里是灰色的,也是不可选 :是因为在"本地组策略编辑器”里面已经设置了,所以,这里是灰色的
方法2
1、用win键加R键调出运行框,输入"gpedit.msc",然后回车,调出组策略编辑器 如下图,点击,计算机配置项下面的"管理模板" 依次点击"系统",找到"关机"项,然后点击"关机"
2、点击如图四所示的"要求使用快速启动" 然后,选择"启用",之后点击确定
3、(这里选择了启用,那么在就会出现在上面控制面板里的启用快速启动是灰色的,)
方法/步骤3
1、桌面右键单击电脑,打开属性然后,选择"高级系统设置"
2、在出现的系统属性,高级项 在"启动和故障恢复"那里,点击"设置"
3、然后,在出来的系统启动,默认操作系统那里,选择当前系统 然后把所有带勾的如图二一样去掉
4、之后,点击确定运行"msconfig",系统配置在系统配置"常规"项,如图一一样勾上选项
5、然后点击"引导",切换后,点击如图二所示的"高级选项"然后勾上"处理器个数",点击下拉箭头,选择最大的数字
然后确定即可
金立手机如何把安卓启动优化应用消除?
这个是因为系统应用初始化优化不到位所致,可以尝试恢复出厂设置进行解决,步骤如下:
1.首先在金立手机的桌面上找到【设置】图标,点击该图标进入金立手机的设置页面。
2.进入手机的设置页面后,滑动页面找到【高级设置】这一选项,点击进入详细页面。
3.进入【高级设置】的页面后,在页面中找到【备份和重置】这一选项。
4.在【备份和重置】页面中,点击【恢复出厂设置】这一选项开始金立手机的系统恢复。
5.在【恢复出厂设置】的页面中,务必将清除【应用程序】这一项进行勾选,这样才可以消除“启动优化应用”这一提示。
6.最后点击页面的底部【确定恢复】即可开始对金立手机的系统进行恢复,然后等待手机开机,此时即可消除“优化应用”这一提示。
怎样优化电脑开机启动项,让电脑变得更快
1、“开始”——运行中输入msconfig——确定——启动——除了输入法ctfmon以外的勾全去掉。重启。
2、右键我的电脑”——属性——点高级——点启动和故障恢复中的设置——去掉所有的勾——写入调试信息选择“无”——确定——点高级下面错误报告——点禁用——2次确定。
3、“开始”——打开控制面板中的文件夹选项——点查看——点去末项自动搜索文件夹前面的勾——确定。
4、右键我的电脑——属性——硬件——设备管理器——双击IDE控制器——次要通道——高级设置——传送模式都选DMA——设备类型选无——确定——主要通道也同样设置——确定。
5、右键C盘进行磁盘清理和其它选项中的系统还原清理。
6、把“C:\WINDOWS\Prefetch(预读文件)和C:\WINDOWS\Temp(临时文件)里的东西全删掉。
7、右键浏览器e——属性——点2个删除1个清除(都要逐一确定)——确定 。
8、清空回收站。
(5、6、7、8点每月清理一次即够。)
9.关掉调试器Dr. Watson,运行drwtsn32,把除了“转储全部线程上下文”之外的全都去掉
10.关闭“系统XP自带的还原”,右键“我的电脑”属性中,系统还原。(建议不要关闭,关闭只能加快系统运行速度,但对电脑没什么好处)
11.关闭“休眠支持”:因为休眠功能占的硬碟空间蛮大的, 所以关闭比较好, 控制面板-->电源选项-->休眠(不要打勾)
12.加快Win XP网上邻居浏览速度!
打开注册表点击到:开始-运行-输入regedit-HKEY_LOCAL_MACHINE/Software/Microsoft/Windows
/CurrentVersion/Explorer/RemoteComputer/NameSpace。分栏出选择键值:{D6277990-4C6A-11CF-87-00AA0060F5BF},删除下面的没有必要的键值,重新启动后,会发现桌面上少了许多图标
13.加速XP的开关机:
1:缩短等待时间 :
开启注册表编辑器(开始-运行-输入regedit-)找到 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control,
将 WaitToKillServiceTimeout 设为:1000或更小。( 原设定值:20000)即关闭程序时仅等待1秒。将 HungAppTimeout 值改为:200( 原设定值:5000),表示程序出错时等待0.5秒。
2:让系统自动关闭停止回应的程序:
打开注册表 HKEY_CURRENT_USER\Control Panel\Desktop 键,
将 AutoEndTasks 值设为 1。 ( 原设定值:0 )
3: MsConfig 大多数朋友都应该熟识MsConfig了,这是一个系统内置的Windows设置工具。点击开始菜单,选择“运行”,然后在录入框中敲入 “msconfig”回车。我们要动手脚的是(启动)选项卡,点击它,这个选项卡中显示了Windows启动时运行的所有程序。这里除了ctfmon,没有一个程序对Windows来说是生死悠关的,所以放心大胆地把不要的去掉。把部分勾勾去掉之后,Windows启动会快些,同时空闲的系统资源也会多出一些。
14.取消XP自带的压缩文件夹工具:
点击开始->运行,敲入: regsvr32 /u zipfldr.dll 。然后回车即可
15.关闭错误回报:
控制台---->系统---->进阶---->右下角--->错误报告---->关闭
16.更改临时文件的位置
A、系统临时文件:由于系统每天都要产生大量的临时文件,如果一直放在系统盘,会产生大量的磁盘碎片,造成系统速度越来越慢。临时文件的产生,一般是安装软件、解压释放压缩包和上网的时候会产生一些临时文件。而且如果频繁下载的话,也会有大量的临时文件产生。
更改临时文件的存放位置的方法是,右键“我的电脑”,“属性”对话框中,“高级”中的“环境变量”设置。“变量”temp和tmp全部设置为其他盘中,选择 “编辑”,然后更改一下路径就可以了。只更改Local Settings\Temp前面的变量就行了,更改为一个盘符的卷标就可以。
下面“系统变量”中还有temp和tmp这两个变量,直接更改成相同的就行了。
B、 Internet临时文件,直接右键“Internet Explorer”中的“属性”对话框中,选择“常规”,在“Internet临时文件”选项中,点击设置对话框,选择“移动文件夹”,将 Internet临时文件也指向到系统文件临时文件夹的位置就可以了。(建议对电脑不熟悉的用户不要改变临时文件的位置,改变失败后,
win10开机启动项怎么优化 win10开机启动项优化方法
首先打开“运行”对话框,可以通过开始菜单打开运行,也可以按下快捷键WIN+R打开“运行”。如下图。输入“msconfig”,回车。
2
打开的系统配置对话框中,点击“启动”。这里是配置开机启动项和开机启动程序的功能所在。如下图。点击“打开任务管理器”。
3
在任务管理器中,就能找到目前为止开机启动项和开机启动程序了。比如,选择其中的“igfxTray Module”启动项,可以对其进行禁止开机自启动操作了。
END
二、利用第三方软件禁止软件和程序开机自启动
这里能够进行开机启动项管理的软件比较多了,比如百度卫士,360安全卫士,QQ管家等等。具体方法比较简单,不再赘述。其中,开机启动项管理一般在“系统优化”“开机加速”等等类似的选项中出现。