你說的是 Composing builds吹泡?
Gradle 之統(tǒng)一管理依賴(kotlin+buildSrc)背景 隨著項(xiàng)目越來越大舶沛,module 越來越多黍图,依賴的庫也越來越多唐含,依賴管理也越來越混亂。 管理 Gradle 依賴三板斧 一彻亲、原始粗暴式 在 module/build.gr...
你說的是 Composing builds吹泡?
Gradle 之統(tǒng)一管理依賴(kotlin+buildSrc)背景 隨著項(xiàng)目越來越大舶沛,module 越來越多黍图,依賴的庫也越來越多唐含,依賴管理也越來越混亂。 管理 Gradle 依賴三板斧 一彻亲、原始粗暴式 在 module/build.gr...
背景 隨著項(xiàng)目越來越大堕担,module 越來越多,依賴的庫也越來越多座掘,依賴管理也越來越混亂递惋。 管理 Gradle 依賴三板斧 一、原始粗暴式 在 module/build.gr...
原理 可以簡單理解為通過底層軟件代碼溢陪,將 CPU 不擅長的圖形計(jì)算轉(zhuǎn)換為 GPU 專用指令萍虽,由 GPU 完成。 當(dāng)目標(biāo) API 級別大于等于 14 時形真,硬件加速默認(rèn)開啟杉编。 控...
RecyclerView 局部刷新 相信現(xiàn)在已經(jīng)很少人不用 RecyclerView 了,如果只有一個 item 的數(shù)據(jù)源改變的時候咆霜,大家都會用 notifyItemChan...
文件保存路徑不要含有特殊符號脉课,建議只包含英文挂疆、數(shù)字和下劃線,否則在某些手機(jī)上會出現(xiàn)訪問文件錯誤下翎。特別是根據(jù)時間來保存文件時容易寫出以下代碼: 以上代碼包含了冒號 缤言,很容易出...
刷新率、幀率 刷新率:每秒屏幕刷新次數(shù)佩微。幀率:GPU 在一秒內(nèi)繪制的幀數(shù)缝彬。雖然現(xiàn)在有的廠商推出了高刷新率的手機(jī),但是主流的還是 60Hz哺眯,即1秒顯示60幀谷浅,1000ms / ...
背景 之前我們在這邊文章中 Android 優(yōu)化之布局優(yōu)化 了解到可以通過使用 ConstraintLayout 來構(gòu)建我們的布局,這也是 Android 官方推薦首要使用的...
背景 在 Java 語境下,使用對象總是讓我感到明顯的不安全感瑟幕,這個對象要判空嗎磕蒲?這個對象肯定不會為空,不用加判斷了吧只盹?經(jīng)過血淋淋的事實(shí)之后辣往,在使用對象之前我總會加上判空處理...
背景 前面我們分析了 App 啟動流程分析(基于 Android 10) ,這次我們一鼓作氣殖卑,來擼一擼 App 啟動優(yōu)化站削,本文主要就一些常規(guī)手段做一些梳理,畢竟不同的 App...
背景 在 Android 手機(jī)上,當(dāng)我們要啟動一個應(yīng)用毡熏,一般是通過在桌面點(diǎn)擊應(yīng)用圖標(biāo)坦敌,之后就進(jìn)入 App 里面了。這顯然是再正常不過的事情了痢法,但是這些都是系統(tǒng)在后臺默默付出的...
Kotlin 是什么狱窘??疯暑? 官網(wǎng)是這樣介紹 Kotlin 的训柴,“讓開發(fā)人員更快樂的一門現(xiàn)代編程語言哑舒,永遠(yuǎn)開源”妇拯。我寫 Java 也挺快樂的,Kotlin 是 JetBrain...
線程安全 何為線程安全洗鸵?維基百科上是這樣描述的:線程安全是指函數(shù)越锈、函數(shù)庫在多線程環(huán)境中被調(diào)用時,能夠正確地處理多個線程之間的共享變量膘滨,使程序功能正確完成甘凭。《Java 并發(fā)編程...