ASM在安卓開發(fā)中的應(yīng)用十分廣泛涡相,本文重點(diǎn)探討通過ASM對匿名內(nèi)部類舔痕、Lambda表達(dá)式及方法引用的Hook矾飞。 安卓的編譯流程中Java文件會被編譯成.class,.clas...
ASM在安卓開發(fā)中的應(yīng)用十分廣泛涡相,本文重點(diǎn)探討通過ASM對匿名內(nèi)部類舔痕、Lambda表達(dá)式及方法引用的Hook矾飞。 安卓的編譯流程中Java文件會被編譯成.class,.clas...
什么是二維碼 Android系統(tǒng)最常用的二維碼開源庫ZXing贼邓,借助ZXing來深入了解一下二維碼識別機(jī)制铅碍。在這之前有必要了解二維碼的組成,以最常用的QRCode(快速識別二...
文章里所有分析都是根據(jù)Android Sdk 25.3.1 在分析棧管理之前先來了解幾個(gè)基本的概念和 FragmentManager 中主要屬性代表什么意思捌治。 Fragmen...
說起leakcanary大家應(yīng)該都很熟悉岗钩,問起原理應(yīng)該都知道在對象被銷毀時(shí)通過WeakReference+ReferenceQueue檢測對象是否被回收,延遲二次檢測后還沒被...
Android內(nèi)存優(yōu)化一:java垃圾回收機(jī)制[http://www.reibang.com/p/fc0963831313]Android內(nèi)存優(yōu)化二:內(nèi)存泄漏[https:...
1.需求導(dǎo)向 1.1.需求導(dǎo)向兼吓,背景描述 產(chǎn)品期望埋點(diǎn)需求,一般是頁面訪問統(tǒng)計(jì)森枪,使用時(shí)長视搏, 某按鈕或模塊點(diǎn)擊事件統(tǒng)計(jì)或者是復(fù)雜行為統(tǒng)計(jì)审孽。總的來說產(chǎn)品期望看到的統(tǒng)計(jì)數(shù)據(jù)是豐富而...
為什么要優(yōu)化包體積 下載轉(zhuǎn)化率:安裝包越小浑娜,轉(zhuǎn)化率越高佑力; 推廣成本:渠道推廣成本和廠商預(yù)裝的單價(jià) 應(yīng)用市場:App Store和Google Play對安裝包大小都有限制; ...
1.LiveData介紹 LiveData是Jetpack AAC的重要組件筋遭,同時(shí)已有一個(gè)同名抽象類打颤。LiveData,原意是活著的數(shù)據(jù)漓滔。數(shù)據(jù)還能有生命编饺?先來看下官方的定義:...
由于公司的業(yè)務(wù)不斷拓展,生產(chǎn)環(huán)境的 APK 大小也從我最初進(jìn)入公司時(shí)的 70M 變?yōu)榱?60MB 响驴,在分析了 APK 結(jié)構(gòu)目錄之后反肋,常規(guī)的壓縮方案已經(jīng)收效甚微了,動態(tài)加載第三...