在技術(shù)學(xué)習(xí)的道路上船殉,往往最常見(jiàn)救欧、用的最多地方磷杏,卻有著容易忽略的技術(shù)細(xì)節(jié)劫流。某個(gè)時(shí)間點(diǎn)驀然回首,才發(fā)現(xiàn)最應(yīng)該了解和掌握的技術(shù)基礎(chǔ)钦无,卻由于缺少總結(jié)和記...
前些天逗栽,有人問(wèn)到 “開(kāi)發(fā)過(guò)程中常見(jiàn)的內(nèi)存泄漏都有哪些?”失暂,一時(shí)脫口而出:靜態(tài)的對(duì)象中(包括單例)持有一個(gè)生命周期較短的引用時(shí)彼宠,或內(nèi)部類(lèi)的子代碼塊...
安卓平臺(tái)的動(dòng)態(tài)加載原理,本質(zhì)其實(shí)還是利用java相關(guān)知識(shí)實(shí)現(xiàn)弟塞。然而java語(yǔ)言中凭峡,開(kāi)發(fā)人員能通過(guò)程序進(jìn)行動(dòng)態(tài)操作class的,主要是字節(jié)碼生成和...
安卓開(kāi)發(fā)技術(shù)發(fā)展到現(xiàn)在已經(jīng)非常成熟决记,有很多的技術(shù)專(zhuān)項(xiàng)如插件摧冀,熱修,加固,瘦身按价,性能優(yōu)化,自動(dòng)化測(cè)試等已經(jīng)在業(yè)界有了完善的或者開(kāi)源的解決方案笙瑟。作為...
APK瘦身實(shí)戰(zhàn) 資源自定義7z壓縮 項(xiàng)目開(kāi)發(fā)中楼镐,隨著業(yè)務(wù)的增長(zhǎng),常常需要在apk編譯階段對(duì)包代碼或是資源做一定的自定義修改往枷,比如熱修復(fù)框产,插件生成...
這里主要講的Hook,是利用java上的動(dòng)態(tài)代理實(shí)現(xiàn)替換系統(tǒng)某個(gè)類(lèi)错洁,在方法調(diào)用過(guò)程中秉宿,利用反射,插入自己代碼邏輯的一種方式屯碴。 安卓插件化學(xué)習(xí) H...
Binder是android系統(tǒng)特有IPC方式描睦,安卓平臺(tái)中的各種服務(wù)交互基本都是Binder機(jī)制實(shí)現(xiàn),理解和掌握Binder機(jī)制的實(shí)現(xiàn)原理可有效...
現(xiàn)在安卓插件化已經(jīng)很成熟导而,可以直接用別人開(kāi)源的框架實(shí)現(xiàn)自己項(xiàng)目忱叭,但是學(xué)習(xí)插件化的實(shí)現(xiàn)原理是安卓研發(fā)工程師加深安卓系統(tǒng)理解的很好途徑。 安卓插件化...
Java平臺(tái)的反射機(jī)制是代碼動(dòng)態(tài)加載和調(diào)用的基本途徑今艺,在安卓系統(tǒng)源碼中也用到了大量的反射動(dòng)態(tài)加載類(lèi)韵丑。反射也是安卓平臺(tái)插件化實(shí)現(xiàn)的必要掌握的基礎(chǔ)知...