原创 【長篇】Android組件化細講+手寫實現2、組件間通信功能實現

接上文【長篇】Android組件化細講+手寫實現 Android市場的N種通信方式我們如何選擇 intent interface(ARouter裏是用這個) aidl handler broadCast 第三方組建通信框架 LiveData

原创 【長篇】Android組件化細講+手寫實現

Android開發進階必看之【組件化架構技術精講合集】B站搜這個視頻。 什麼是組件化,爲什麼要組件化 耦合、維護、擴展、項目大了編譯慢 公共層:glide、第三方sdk 系統層:藍牙、 將原本業務邏輯拆分成業務模塊 好處: 編譯速度:

原创 Kotlin學習5 object關鍵字

繼承與重載的open關鍵字 類默認都是封閉(final)的,要讓某個類開放繼承,必須使用open關鍵字修飾他 open class Product(val name:String){ fun des() = "Product: $nam

原创 Kotlin學習4 集合 set集合 map集合 類

集合 List、set 、map 分兩類,只讀和可變 List創建與元素獲取 getOrElse是一個安全索引取值函數,他需要兩個參數,第一個是索引值,第二個是能提供默認值的lambda表達式,如果索引值不存在的話,可用來代替異常。 get

原创 Kotlin學習2

1什麼時匿名函數 定義函數時不取名字的函數,我們稱之爲匿名函數,匿名函數通常整體傳遞給其他函數,或者從其他函數返回。 匿名函數對Kotlin來說很重要,有了他,我們能夠根據需要制定特殊規則,輕鬆定製標準庫裏的內置函數 fun main(){

原创 Kotlin學習1

1聲明變量和內置數據類型 fun main(){ var str:String = "Hello world" //var a:Int = 5 println(str) } 2只讀變量 要聲明可修改變量,使用var關鍵字

原创 Kotlin學習3 標準庫函數

1kotlin可空性 提前在編譯期強迫重視null問題 除非另有規定,變量不能爲null值。 爲了避免NullPointerException,Kotlin的做法是不讓我們給非空類型變量賦null值,但null在Kotlin中依然存在。 f

原创 【長篇】插件化架構設計 插件化中的資源加載

一次讓你徹底掌握Android插件化架構設計 插件化簡介 宿主host 與 插件(免安裝:不需要安裝apk,下載即可) -->插件加載 -->插件化中的組件支持(startActivity如何去啓動) -->插件化中資源(佈局文件圖片)的

原创 【長篇】OkHttp&Retrofit 進入原理分析 Retrofit原理分析

OkHttp&Retrofit大家都在用,原理很懵懂?2021玩轉網絡框架 本文是okhttp3.14版本 okhttp框架介紹 同步get請求實現 //這個儘量做成單例,減少創建次數 OkhttpClient okhttpClient;

原创 Android Bitmap內存模型、屬性、壓縮、優化

摘自 https://blog.csdn.net/zengfenliang/article/details/83116638 https://www.cnblogs.com/shakinghead/p/11025805.html https

原创 jepg圖像引擎實現超過原生的圖片壓縮性能

以下都以8.0爲例: 真正加載bitmap是靠對象的long mNativePtr指向native中的地址 Bitmap只有createBitmap 而沒有new方法。 在系統源碼裏(8.0)/frameworks/base/core/j

原创 Android Asynctask總結

/** * 步驟1:創建AsyncTask子類 * 注: * a. 繼承AsyncTask類 * b. 爲3個泛型參數指定類型;若不使用,可用java.lang.Void類型代替 * c. 根據需求,在As

原创 Android熱修復6、Tinker詳解及兩種方式接入

Tinker的基本介紹 微信android的熱補丁方案,支持動態下發代碼,so庫以及資源,讓應用在不需要重新安裝的情況下實現更新。 由三個部分組成: 1gradle編譯插件:tinker-patch-gradle-plugin,AS中直接生

原创 Android熱修復7、引入熱修復後代碼及版本管理

需要對git有一定了解 加入動態更新後如何管理我們的代碼分支 分支管理 沒有引入動態更新時: 1master 線上版本代碼,每個版本tag; 2dev 開發分支,程序員代碼; 3michael、bob個人分支 ,提交後無價值了,刪掉後再從

原创 Tinker如何實現熱修復

Android熱修復1、class文件與dex文件解析https://www.jianshu.com/p/dea6a368944d Android熱修復2、虛擬機深入講解https://www.jianshu.com/p/17f7843e0