轉(zhuǎn)載[https://blog.csdn.net/javazejian/article/details/52571779]籽前,該博客寫的比較簡單明了了,記錄一下
轉(zhuǎn)載[https://blog.csdn.net/javazejian/article/details/52571779]籽前,該博客寫的比較簡單明了了,記錄一下
記錄gradle copy文件時(shí)rename的用法 1.最直接的方法 2.更多方法可以直接參考官方文檔[https://docs.gradle.org/current/use...
垃圾回收的對象 我們申請的幾乎所有對象都存儲(chǔ)在堆上挠锥,并且堆空間在進(jìn)程啟動(dòng)時(shí)就已經(jīng)創(chuàng)建了一個(gè)初始化的空間,隨著程序的運(yùn)行蓖租,堆內(nèi)存的使用率/大小增長情況下,為保證程序的內(nèi)存空間足...
方法區(qū) JVM在執(zhí)行某個(gè)類之前需要先加載這個(gè)類(加載,驗(yàn)證,準(zhǔn)備,解析,初始化)齐婴,加載類會(huì)將class文件中的類信息(版本稠茂,字段,方法,接口诱担,常量池)存入方法區(qū)中,文件的常量...
installNavitveLibraryABI不太安全情竹,如果有其他版本的so匀哄,或者不完整的so或者不是這個(gè)補(bǔ)丁版本的so,那么這樣注入就會(huì)有問題涎嚼,而且bsDiff后生成的so跟目標(biāo)so的md5校驗(yàn)邏輯也沒有了。
Tinker源碼分析(五):加載so補(bǔ)丁流程本系列 Tinker 源碼解析基于 Tinker v1.9.12 校驗(yàn)so補(bǔ)丁流程 與加載資源補(bǔ)丁類似法梯,加載so補(bǔ)丁也要先從校驗(yàn)開始看起。 其實(shí)總體來說立哑,Tinker 中加載...
LiveData原理解析 LiveData是一個(gè)數(shù)據(jù)持有者類铛绰,可以在給定的生命周期中觀察到。 observe觀察數(shù)據(jù)變化 observe被要求在主線程調(diào)用捂掰,并且傳遞生命周期相...
Http加密類型 對稱加密 采用單鑰密碼系統(tǒng)的加密方法这嚣,同一個(gè)密鑰可以同時(shí)用作信息的加密和解密,這種加密方法稱為對稱加密姐帚,也稱為單密鑰加密。 常用算法: DES(Data E...
在編譯期
kotlin的synthetic實(shí)現(xiàn)原理解析kotlin的synthetic實(shí)現(xiàn)方式是編譯期修改synthetic相關(guān)代碼惫皱, 實(shí)際上使用的還是findViewById來尋找布局尤莺,只不過相關(guān)代碼,kotlin幫我們自動(dòng)生...
Glide初始化,采用懶注冊的方式,設(shè)置參數(shù) Glide是一個(gè)單例夹供,應(yīng)用第一次使用Glide是會(huì)調(diào)用initializeGlide方法,編譯期根據(jù)GlideModule或清單...
準(zhǔn)確的說Glide是有三級(jí)緩存的,ActiveResources枝笨,MemoryCache和DiskCache
Glide原理探究Glide分析 發(fā)展到現(xiàn)在Android的圖片加載框架越來越成熟從一開始的UIL到后來的Glide袁铐、Picasso横浑、fresco等剔桨。相比較而言Glide的功能更加強(qiáng)大徙融,但是相...
kotlin的synthetic實(shí)現(xiàn)方式是編譯期修改synthetic相關(guān)代碼树绩, 實(shí)際上使用的還是findViewById來尋找布局,只不過相關(guān)代碼隐轩,kotlin幫我們自動(dòng)生...
onCreate時(shí)設(shè)置stylesetStyle(DialogFragment.STYLE_NORMAL, android.R.style.Theme_Light_NoTit...
你不想事件丟失的話livedata可以observeForever的
把 LiveData 用于事件傳遞那些坑1、為什么要把 LiveData 當(dāng)作事件傳遞用 利用觀察者模式打造的事件總線的優(yōu)點(diǎn)不必多說(當(dāng)然也有很多缺點(diǎn))骂蓖,如 EventBus 和 RxBus 用的好的話能起到很好的...