前言 Jetpack 是一個(gè)由多個(gè)庫(kù)組成的套件,可幫助開發(fā)者遵循最佳做法,減少樣板代碼。如果項(xiàng)目采用 MVVM 架構(gòu),那么 Jetpack 里面的架構(gòu)相關(guān)的組件就是為MVVM...
前言 Jetpack 是一個(gè)由多個(gè)庫(kù)組成的套件,可幫助開發(fā)者遵循最佳做法,減少樣板代碼。如果項(xiàng)目采用 MVVM 架構(gòu),那么 Jetpack 里面的架構(gòu)相關(guān)的組件就是為MVVM...
前言 互聯(lián)網(wǎng)時(shí)代, App作為于用戶交互的端, 可以說實(shí)際上是一個(gè)界面, 產(chǎn)品的業(yè)務(wù), 服務(wù)都是由Server提供的. 而App與Server的交互依賴于網(wǎng)絡(luò), 故而網(wǎng)絡(luò)優(yōu)化...
概述 Handler是Android消息機(jī)制的上層接口。通過它可以輕松地將一個(gè)任務(wù)切換到Handler所在的線程中去執(zhí)行。通常情況下,Handler的使用場(chǎng)景就是 更新UI。...
在分析OkHttp的核心流程已經(jīng)核心類之前,我們先搞清楚兩個(gè)概念,一個(gè)是OkHttpClient和Request在創(chuàng)建時(shí)所使用的構(gòu)建者模式;另外一個(gè)則是負(fù)責(zé)響應(yīng)處理的攔截器模...
引言 Fragment 誕生之初就被定義為一個(gè)小型 Activity,因此它代理了 Activity 的許多能力(例如 startActivityForResult 等),職...
前段時(shí)間一哥們出去面試,回顧面試題的時(shí)候,說問到了枚舉。 作為一名Android選手,談到枚舉,那肯定是: Android上不應(yīng)該使用枚舉,占內(nèi)存,應(yīng)該使用@XXXDef注解...
Android現(xiàn)在是越來越不好找工作了,并且未來還會(huì)更難,主要原因呢還是太卷,同樣是搞搞業(yè)務(wù)代碼,誰更熟練要誰,同樣的高工崗,誰對(duì)底層原理研究最深要誰,比如下面這些面試題,八...
在學(xué)習(xí)Android framework的過程中,大家走回走進(jìn)一個(gè)誤區(qū),或者說繞了遠(yuǎn)路,就是會(huì)為龐大的源碼而耗費(fèi)大量心力。在這里還是要提醒大家,不要過于關(guān)心那些復(fù)雜的函數(shù)調(diào)用...
一、Android繪制原理及工具選擇 1.1、Android繪制原理 對(duì)于Android手機(jī)來說,它的畫面渲染依賴于兩個(gè)硬件:1.CPU;2.GPU: CPU負(fù)責(zé)計(jì)算顯示內(nèi)容...
一、啟動(dòng)優(yōu)化概念 1.1、為什么要做啟動(dòng)優(yōu)化? APP優(yōu)化是我們進(jìn)階高級(jí)開發(fā)工程師的必經(jīng)之路,而APP啟動(dòng)速度的優(yōu)化,也是我們開啟APP優(yōu)化的第一步。用戶在使用我們的軟件時(shí),...
一、內(nèi)存優(yōu)化概念 1.1 為什么要做內(nèi)存優(yōu)化? 內(nèi)存優(yōu)化一直是一個(gè)很重要但卻缺乏關(guān)注的點(diǎn),內(nèi)存作為程序運(yùn)行最重要的資源之一,需要運(yùn)行過程中做到合理的資源分配與回收,不合理的內(nèi)...
Glide流程分析 說到圖片加載框架,大家最熟悉的莫過于Glide了,但我卻不推薦簡(jiǎn)歷上寫熟悉Glide, 除非你熟讀它的源碼,或者參與Glide的開發(fā)和維護(hù)。然而很多小伙伴...