
温馨提醒:升级系统后卡顿原因:由于系统升级后刚开始使用时,系统会对手机中的应用程序进行优化,此时手机负载较高,使用时可能会出现卡顿情况。建议升级完成后将手机灭屏充电2小时以上,然后重启手机以保证手机圆清内已安装的应用优化完成。
1. 检查手机是否正在下载、复制、传输等 *** 作
如果手机正在执行上传下载(文件、图片、视频、应用等)、复制(文件管理拷贝数据等)、传输(手机克隆、Huawei Share等)等 *** 作时感觉到卡顿,建议您等待任务结束或停止此 *** 作。
提示:您可以下拉状态栏查看上传、下载、传输文件的进度。链没
2. 重启手机
请您重启手机后尝试。建议您2~3天重启一次手机,重启能有效的清理缓存,缓解卡顿现象。
3. 检查手机是否发热或者充电时使用
手机发热严重时性能下降出现卡顿。建议您尽量避免充电时使用手机,适当降低屏幕亮度,关闭不使用或异常耗电应用与功能,如“蓝牙”,NFC等。
4. 检查存储卡
(1)可能是存储卡存储的文件过多(建议预留10%以上空间),导致读写速度慢,建议您清理存储卡空间,或备份重要数据(微信/QQ等应用需单独备份)后格式化存储卡。
(2)可能是存储卡硬件异常,是否曾提示“存储卡异常”,若是,建议您尽快更换存储卡。
(3)若手机的默认存储位置为存储卡,建议您将默认存储位置更改为“内部存储”后尝试。
5. 关闭省电模式、保持电量充足
如果您开启了省电模式,建议您关闭(设置 >电池 >省电模式和 超级省电),并保持电量充足(20%以上)。省电模式和低电量情况下,手机会降低性能以节省电量。
6. 清理存储空间
手机运行内存和存储空间不足时会导致应用卡顿,建议您进入手机管家进行清理:
(1)进入手机管家点击一键优化/立即优化,优化完毕后,手机管家会显示优化结果以及设置建议。根据提示,完成相应的设置。
(2)进入手机管家点击清理加速,待扫描完毕后,点击清理项后的立即清理,根据提示删除多余的文件,并卸载不常用的应用,保持存储空间充足(建议预留20%以上)。
7. 卸载第三方手机管家类软件
如果您的手机装有第三方手机管理类型的软件,请卸载此类应用后尝试。通常此类软件与手机自带的手机管家存在冲突,会导致运行卡顿。
8. 升级系统版本
(1)如果手机已经 Root,请恢复成官方稳定版本使用,详情请致电华为客服咨询。
(2)建议您及时进行橘唤前手机系统更新,并将应用升级到最新版本。新版本会对系统性能进行优化提升。更新方法:进入手机设置,搜索进入软件更新,点击检查更新。
提示:恢复版本和升级系统版本会造成数据丢失,请您提前备份好数据(微信/QQ等应用需单独备份)。
9. 恢复出厂设置
请您备份重要数据(微信/QQ等应用需单独备份),将手机恢复出厂设置后重试。
温馨提醒:您可以选择夜间充电(或灭屏充电40min以上),可以一定程度上整理手机内存碎片,缓解卡顿现象。
如果问题仍然存在,请您备份好数据后(微信/QQ等应用需单独备份)携带购机凭证前往华为客户服务中心进行检测处理。
性能优化的常用方法
主要内容包括布局优化,绘制优化,内存泄露优化,相应速度优化,ListView优化,Bitmap优化,线程优化等,下面主要给你举了其中的几个例子:
(1)布局优化
布局优化的思想很简单,就是尽量减少布局文件的层级。
如何进行优化呢?敬颂首先删除布局中无用的控件和层级,其次有选择地使用性能较低的ViewGroup,比如LinearLayout。如果布局中有的布局既可以用LinearLayout也可以用RelativeLayout,那就用LinearLayout,这是因为RelativeLayout比较复杂,他的布局过程花费更多的CPU时间。FrameLayout和LinearLayout一样都是一种简单高效的ViewGroup,因此可以考虑使用他们,但是很多时候,单纯的通过一个LinearLayout或者FrameLayout无法实现产品的效果,需要通过嵌套的方式来完成,这种情况建议采用RelativeLayout,因为ViewGroup的嵌套就相当于增加了布局的层级,同样会降低程序的性能。
布局优化的另一种手段是采用<include>标q,<merge>标签和ViewStub。<include>标签主要用于布局重用,<merge>标签一般和<include>配合使用,它可以减少布局的层级。而ViewStub则提供了按需加载功能,当需要时才将ViewStub中的布局加载到内存,这提高了程序前卜的初始化效率。
(2)绘制方法
绘制优化是指View的onDraw方法避免执行大量的 *** 作,这主要有两方面。
首先,onDraw中不要创建新的布局对象,这是因为onDraw方法可能会被频繁调用,这样就会在一瞬间产生大量的临时对象,这不仅占用了过多的内存而且还会导致系统更加频繁的gc,降低了程序的执行效率。
另一方面,onDraw方法中不要做耗时的任务,也不能执行成千上万次循环 *** 作,尽管每次循环都很轻量级,但是大量的循环仍然十分抢占CPU的时间片,这会造成View的绘制过程不流畅。
(3)内存泄露优化
内存泄露在开发过程中是一个需要重视的问题,但是由于内存泄露问题对开发人员的经验和开发意识要求比较高,因此这是开发人员最容易犯的错误之一。内存泄露的优化分为两个方面,一方面是在开发过程中避免写出内存泄露的代码,另一方面通过一些分析工具比如MAT来找出潜在的内存泄露继而解决。
关于性能优化的建议
1.避免黄健过多对象;
2.不要过多使用枚举,枚举占用的内存空亮悔郑间比整型大一些。
3.常量使用static final 来修饰。
4.使用一些Android特有的数据结构,比如SpareArray和Pair等,他们都具有更好的性能。
5.适当使用软引用和弱引用。
6.采用内存缓存和磁盘缓存
7.尽量采用静态内部类,这样可以避免潜在的内部类而导致的内存泄漏。
启动过程一般是四个过程:1, 预览窗口显示 。这个过程如果携祥脊我们禁用预览窗口或者预览窗口设置为透明,我们看到的还是桌面。2, 闪屏显示 。3, 主屏显示 。4, 界面可 *** 作 。
具体的优化方式,我们可以把他们分为1, 闪屏优化 。2, 业务梳理 。3, 业务优化 。4, 线程优化 。5, GC优化 。6, 系统调用优化 。
1, 闪屏优化 :建议Android6.0以上再使用预览闪屏方案。
2, 业务梳理 :根据不同业务模块梳理出那些需要启动加载,那些可以使用时加载。注意懒加载不要集中处理,不然容易卡顿。宴族
3, 业务优化 :有些业务模块可以通过优化逻辑,算法的方式时运行时间缩短。
4, 线程优化 :线程的优化主要在于减少CPU调度带来的波动,让应用的启动时间更加稳定。具体的做法就是减少线程启动的数量,使用线程池。
5, GC优化 :在启动过程中,要尽量减少GC的次数。具体的做法有避免进行大量的字符串 *** 作,特别是序列号话反序列化过程,一些频繁创建的对象尽量能复用,如果是必须的需要频繁创建对象,可以考虑放入Native中实现。
6, 系统调用优化 :启动过程中尽量不做系统调用,比如PackageManagerService的 *** 作,binder的调用。启动过程中不要尽早辩渗的拉起其他进程。
进阶优化可以有:1,IO优化,尽量不做网络IO *** 作。2,数据重排,类重排。3,资源文件重排。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)