![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
内存优化
文章平均质量分 90
里昂007
来日方长
展开
-
屏幕适配
屏幕适配为什么要适配由于Android系统的开放性,任何用户、开发者、OEM厂商、运营商都可以对Android进行定制,于是导致运行 Android 的设备多种多样,它们有着不同的屏幕尺寸和像素密度。 尽管系统可通过基本的缩放和调整大小功能使界面适应不同屏幕,但您应做出进一步优化,以确保界面能够在各类屏幕上美观地呈现几个重要的概念屏幕尺寸屏幕尺寸指屏幕的对角线的长度,单位是英寸,1英寸=2.54厘米比如常见的屏幕尺寸有2.4、2.8、3.5、3.7、4.2、5.0、5.5、6.0等原创 2021-03-26 13:48:23 · 231 阅读 · 0 评论 -
SQL优化
SQLite什么是SQLiteSQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreS原创 2021-03-25 14:16:35 · 133 阅读 · 0 评论 -
APK瘦身
缩减应用大小随着业务迭代,apk体积逐渐变大。项目中积累的无用资源,未压缩的图片资源等,都为apk带来了不必要的体积增加。而APK 的大小会影响应用加载速度、使用的内存量以及消耗的电量。了解 APK 结构在讨论如何缩减应用的大小之前,有必要了解下应用 APK 的结构。APK 文件由一个 Zip 压缩文件组成,其中包含构成应用的所有文件。这些文件包括 Java 类文件、资源文件和包含已编译资源的文件。APK 包含以下目录:META-INF/ :包含 CERT.SF 和 CERT.RSA 签..原创 2021-03-22 15:50:58 · 1029 阅读 · 0 评论 -
电量与网络优化
电量优化电池续航时间是移动用户体验中最重要的一个方面。没电的设备完全无法使用。因此,对于应用来说,尽可能地考虑电池续航时间是至关重要的。在我们开发时对于单个APP应该注意能够:减少操作:您的应用是否存在可删减的多余操作?例如,是否可以缓存已下载的数据,而不是每次重新下载数据?推迟操作:应用是否需要立即执行某项操作?例如,是否可以等到设备充电后或者Wifi连接时(通常情况下使用移动网络要比WIFI更耗电 )再将数据备份到云端?合并操作:工作是否可以批处理,而不是多次将设备置于活动状态?比如和服原创 2021-03-11 16:08:56 · 476 阅读 · 0 评论 -
ANR解析
概念ANR(Application Not responding),是指应用程序未响应,Android系统对于一些事件需要在一定的时间范围内完成,如果超过预定时间能未能得到有效响应或者响应时间过长,都会造成ANR在 Android 里,应用程序的响应性是由 Activity Manager 和 WindowManager 系统服务监视的。当它监测到以下情况中的一个时,Android 就会针对特定的应用程序显示 ANR:场景Service TimeoutBroadcastQueue Timeo原创 2021-03-10 14:05:45 · 486 阅读 · 0 评论 -
卡顿分析与布局优化
大多数用户感知到的卡顿等性能问题的最主要根源都是因为渲染性能。Android系统每隔大概16.6ms发出VSYNC信号,触发对UI进行渲染,如果每次渲染都成功,这样就能够达到流畅的画面所需要的60fps,为了能够实现60fps,这意味着程序的大多数操作都必须在16ms内完成。我们通常都会提到60fps与16ms,可是知道为何会是以程序是否达到60fps来作为App性能的衡量标准吗?这是因为人眼与大脑之间的协作无法感知超过60fps的画面更新。12fps大概类似手动快速翻动书籍的帧率,这明显是可以原创 2021-03-09 14:31:31 · 524 阅读 · 0 评论 -
Android App启动优化
用户希望应用能够及时响应并快速加载。启动时间过长的应用可能会导致用户在对应用给出很低的评分,甚至完全弃用。启动状态应用有三种启动状态,每种状态都会影响应用向用户显示所需的时间:冷启动、温启动与热启动。在冷启动中,应用从头开始启动。在另外两种状态中,系统需要将后台运行的应用带入前台。建议始终在假定冷启动的基础上进行优化。这样做也可以提升温启动和热启动的性能。冷启动冷启动是指应用从头开始启动:系统进程在冷启动后才创建应用进程。发生冷启动的情况包括应用自设备启动后或系统终止应用后首次启动。热启原创 2021-03-08 16:31:11 · 391 阅读 · 0 评论 -
OOM与内存优化
内存管理基础App内存组成以及限制Android 给每个 App 分配一个 VM ,让App运行在 dalvik 上,这样即使 App 崩溃也不会影响到系统。系统给 VM 分配了一定的内存大小, App 可以申请使用的内存大小不能超过此硬性逻辑限制,就算物理内存富余,如果应用超出 VM 最大内存,就会出现内存溢出 crash 。由程序控制操作的内存空间在 heap 上,分 java heapsize 和 native heapsizeJava申请的内存在 vm heap 上,所以如果 java原创 2021-03-05 13:56:16 · 722 阅读 · 0 评论 -
数据结构
算法的时间复杂度和空间复杂度分析通常,对于一个给定的算法,我们要做 两项分析。第一是从数学上证明算法的正确性,这一步主要用到形式化证明的方法及相关推理模式,如循环不变式、数学归纳法等。而在证明算法是正确的基础上,第二部就是分析算法的时间复杂度。算法的时间复杂度反映了程序执行时间随输入规模增长而增长的量级,在很大程度上能很好反映出算法的优劣与否。因此,作为程序员,掌握基本的算法时间复杂度分析方法是很有必要的。 算法执行时间需通过依据该算法编制的程序在计算机上运行时所消耗的时间来度量。而度量一个程序原创 2021-03-04 14:16:58 · 513 阅读 · 1 评论