你說(shuō)的是 Composing builds?
Gradle 之統(tǒng)一管理依賴(lài)(kotlin+buildSrc)背景 隨著項(xiàng)目越來(lái)越大,module 越來(lái)越多,依賴(lài)的庫(kù)也越來(lái)越多,依賴(lài)管理也越來(lái)越混亂。 管理 Gradle 依賴(lài)三板斧 一、原始粗暴式 在 module/build.gr...
你說(shuō)的是 Composing builds?
Gradle 之統(tǒng)一管理依賴(lài)(kotlin+buildSrc)背景 隨著項(xiàng)目越來(lái)越大,module 越來(lái)越多,依賴(lài)的庫(kù)也越來(lái)越多,依賴(lài)管理也越來(lái)越混亂。 管理 Gradle 依賴(lài)三板斧 一、原始粗暴式 在 module/build.gr...
背景 隨著項(xiàng)目越來(lái)越大,module 越來(lái)越多,依賴(lài)的庫(kù)也越來(lái)越多,依賴(lài)管理也越來(lái)越混亂。 管理 Gradle 依賴(lài)三板斧 一、原始粗暴式 在 module/build.gr...
原理 可以簡(jiǎn)單理解為通過(guò)底層軟件代碼,將 CPU 不擅長(zhǎng)的圖形計(jì)算轉(zhuǎn)換為 GPU 專(zhuān)用指令,由 GPU 完成。 當(dāng)目標(biāo) API 級(jí)別大于等于 14 時(shí),硬件加速默認(rèn)開(kāi)啟。 控...
RecyclerView 局部刷新 相信現(xiàn)在已經(jīng)很少人不用 RecyclerView 了,如果只有一個(gè) item 的數(shù)據(jù)源改變的時(shí)候,大家都會(huì)用 notifyItemChan...
文件保存路徑不要含有特殊符號(hào),建議只包含英文、數(shù)字和下劃線(xiàn),否則在某些手機(jī)上會(huì)出現(xiàn)訪(fǎng)問(wèn)文件錯(cuò)誤。特別是根據(jù)時(shí)間來(lái)保存文件時(shí)容易寫(xiě)出以下代碼: 以上代碼包含了冒號(hào) ,很容易出...
刷新率、幀率 刷新率:每秒屏幕刷新次數(shù)。幀率:GPU 在一秒內(nèi)繪制的幀數(shù)。雖然現(xiàn)在有的廠(chǎng)商推出了高刷新率的手機(jī),但是主流的還是 60Hz,即1秒顯示60幀,1000ms / ...
背景 之前我們?cè)谶@邊文章中 Android 優(yōu)化之布局優(yōu)化 了解到可以通過(guò)使用 ConstraintLayout 來(lái)構(gòu)建我們的布局,這也是 Android 官方推薦首要使用的...
背景 在 Java 語(yǔ)境下,使用對(duì)象總是讓我感到明顯的不安全感,這個(gè)對(duì)象要判空嗎?這個(gè)對(duì)象肯定不會(huì)為空,不用加判斷了吧?經(jīng)過(guò)血淋淋的事實(shí)之后,在使用對(duì)象之前我總會(huì)加上判空處理...
背景 前面我們分析了 App 啟動(dòng)流程分析(基于 Android 10) ,這次我們一鼓作氣,來(lái)擼一擼 App 啟動(dòng)優(yōu)化,本文主要就一些常規(guī)手段做一些梳理,畢竟不同的 App...
背景 在 Android 手機(jī)上,當(dāng)我們要啟動(dòng)一個(gè)應(yīng)用,一般是通過(guò)在桌面點(diǎn)擊應(yīng)用圖標(biāo),之后就進(jìn)入 App 里面了。這顯然是再正常不過(guò)的事情了,但是這些都是系統(tǒng)在后臺(tái)默默付出的...
Kotlin 是什么??? 官網(wǎng)是這樣介紹 Kotlin 的,“讓開(kāi)發(fā)人員更快樂(lè)的一門(mén)現(xiàn)代編程語(yǔ)言,永遠(yuǎn)開(kāi)源”。我寫(xiě) Java 也挺快樂(lè)的,Kotlin 是 JetBrain...
線(xiàn)程安全 何為線(xiàn)程安全?維基百科上是這樣描述的:線(xiàn)程安全是指函數(shù)、函數(shù)庫(kù)在多線(xiàn)程環(huán)境中被調(diào)用時(shí),能夠正確地處理多個(gè)線(xiàn)程之間的共享變量,使程序功能正確完成?!禞ava 并發(fā)編程...