摘要:
前言 在這個系列的前四篇文章中,我分別介紹了DVM、ART、內(nèi)存泄漏和內(nèi)存檢測工具的相關知識點,這一篇我們通過一個小例子,來學習如何使用內(nèi)存分析工具MAT。 1.概述 在進行內(nèi)存分析時,我們可以使用Memory Monitor和Heap Dump來觀察內(nèi)存的使用情況、使用Allocation Tra
閱讀全文
摘要:
前言 要想做好內(nèi)存優(yōu)化工作,就要掌握兩大部分的知識,一部分是知道并理解內(nèi)存優(yōu)化相關的原理,另一部分就是善于運用內(nèi)存分析的工具。本篇就來介紹內(nèi)存分析工具:Memory Monitor、Allocation Tracker和Heap Dump的使用方法。 1.Memory Monitor 在Androi
閱讀全文
摘要:
1.概述 Android4.4以上開始使用ART虛擬機,在此之前我們一直使用的Dalvik虛擬機,那么為什么Google突然換了Android運行的虛擬機呢?答案只有一個:ART虛擬機更優(yōu)秀。 2.Dalvik vs ARTDalvik Android4.4及以前使用的都是Dalvik虛擬機,我們知
閱讀全文
摘要:
前言 我們知道一個界面的測量和繪制是通過遞歸來完成的,減少布局的層數(shù)就會減少測量和繪制的時間,從而性能就會得到提升。當然這只是布局優(yōu)化的一方面,那么如何來進行布局的分析和優(yōu)化呢?本篇文章會給你一個滿意的答案。 1.布局優(yōu)化工具 在講到如何去布局優(yōu)化前,我們先來學習兩種布局優(yōu)化的工具。 1.1 Hie
閱讀全文
摘要:
前言 一個優(yōu)秀的應用不僅僅是要有吸引人的功能和交互,同時在性能上也有很高的要求。運行Android系統(tǒng)的手機,雖然配置在不斷的提升,但仍舊無法和PC相比,無法做到PC那樣擁有超大的內(nèi)存以及高性能的CPU,因此在開發(fā)Android應用程序時也不可能無限制的使用CPU和內(nèi)存,如果對CPU和內(nèi)存使用不當也
閱讀全文
摘要:
前言 在本系列上一篇文章Android包管理機制(一)PackageInstaller的初始化中我們學習了PackageInstaller是如何初始化的,這一篇文章我們接著學習PackageInstaller是如何安裝APK的。本系列文章的源碼基于Android8.0。 1.PackageInsta
閱讀全文
摘要:
前言 包管理機制是Android中的重要機制,是應用開發(fā)和系統(tǒng)開發(fā)需要掌握的知識點之一。 包指的是Apk、jar和so文件等等,它們被加載到Android內(nèi)存中,由一個包轉(zhuǎn)變成可執(zhí)行的代碼,這就需要一個機制來進行包的加載、解析、管理等操作,這就是包管理機制。包管理機制由許多類一起組成,其中核心為Pa
閱讀全文
摘要:
前言 在本系列上一篇文章中我講到了垃圾標記算法,垃圾被標記后,GC就會對垃圾進行收集,垃圾收集有很多種算法,這篇文章就來介紹常用的垃圾收集算法的思想。 1.標記-清除算法 標記-清除算法(Mark-Sweep)是一種常見的基礎垃圾收集算法,它將垃圾收集分為兩個階段: 標記階段:標記出可以回收的對象。
閱讀全文
摘要:
1.啟動Fiddler,打開菜單欄中的 Tools > Fiddler Options,打開“Fiddler Options”對話框。 2.在Fiddler Options”對話框切換到“Connections”選項卡,然后勾選“Allow romote computers to connect”后
閱讀全文
摘要:
1.Socket簡介 Socket也稱作“套接字“,是在應用層和傳輸層之間的一個抽象層,它把TCP/IP層復雜的操作抽象為幾個簡單的接口供應用層調(diào)用以實現(xiàn)進程在網(wǎng)絡中通信。它分為流式套接字和數(shù)據(jù)包套接字,分別對應網(wǎng)絡傳輸控制層的TCP和UDP協(xié)議。TCP協(xié)議是一種面向連接的、可靠的、基于字節(jié)流的傳輸
閱讀全文