原创 組件化1---組件化架構初步原理

完整組化件和插件化可以參考我的github項目,已經用在線上項目中 組件化: 就是將一個完整的功能拆分成多個子模塊,而每個子模塊可以獨立編譯和運行,也可以任意的組合成一個新的APP 優勢: 團隊開發過程中方便項目管理,它分工非常明確互不

原创 Rxjava從使用到原碼的解析九: Rxjava背壓策略

Rxjava背壓策略由來: RxJava1.X的時候,還沒有背壓模式,在我們上游就可以無限發射事件出來,當我們下游處理不過來的時候,就會造成內存泄漏 RxJava2.0之後,作者就增加了背壓策略-->>Flowable,他拉功能跟Obse

原创 Rxjava從使用到原碼的解析六: Rxjava合併型操作符

Rxjava合併型操作符 : 二個或以上的被觀察者進行合併 startWith   concatWith 跟startWith相反 concat   merge 合併操作符,跟concat一樣,但是他跟concat不同的是他是並列的 zi

原创 Rxjava從使用到原碼的解析八: Rxjava線程切換

來一個最基本的測試 在主線程中做如下操作 Log.e(TAG, Thread.currentThread().getName()); Disposable subscribe = Observable.c

原创 第三天(組件化,插件化,模塊化是什麼,有什麼區別)

組件化與插件化相同之處: 是將一個APP拆分爲多個模塊去開發. 插件化: 如果我們把一個APP分爲多個模塊來開發的化,我們最終打包的時候永遠只需要打包當前的主apk就可以,其它的功能模塊可以不管,它們可以當作是一個獨立的apk來單獨運行,

原创 Rxjava從使用到原碼的解析十一: Rxjava創建操作符原碼解析

被觀察者Observable 實現了ObservableSource接口,泛型爲T, 從Observable.create方法可以看出,create這個方法一定是一個靜態的,代碼好下 public static <T> Obse

原创 Rxjava從使用到原碼的解析十: Rxjava實戰之配合Retrofit請求完註冊接口直接再請求登陸接口

一個註冊和登陸接口 public interface LoginApi { @FormUrlEncoded @POST("user/login") Observable<HttpResult<LoginBean

原创 Rxjava從使用到原碼的解析十二: Rxjava轉換型操作符map原碼解析

上一篇講了創建型操作符,裏面需要傳個一個泛型假設爲String,那麼下游接收的泛型也是String map操作符的作用就是,假設我下游需要接收的是一個Bitmap那這個時候就需要類型來轉換. 下來來分析下Rxjava是如果做到泛型轉換的,

原创 Rxjava從使用到原碼的解析四: Rxjava變換型操作符

Rxjava變換型操作符: RxJava從上游發射事件到下游接收事件過程中對進行事件變換.創建變換操作符主要有以下幾種 map Observable.just(1, 2)//內部會先發送A再發送B

原创 Rxjava從使用到原碼的解析二:Rxjava2的響應式框架設計的事件流向

Rxjava我們可以把他理解成一個河流,事件的起點我們稱爲上游,事件的終點我們稱爲下游,河裏面的水都是從上而下流動,所以Rxjava也一樣,只能從事件的起源再到事件的處理,不可逆狀態,我們如果想要改變事件只能在上游和下游之間對事件進行攔截

原创 第六天(網絡請求之OSI七層模型)

網絡交互是一個非常複雜的過程,國際標準把它就分爲了七層模型 應用層:    可以看的見的終端應用-->比如各種瀏覽器,有http,rtft等一些信息,上傳下載的一些工具 表示層:    計算機識別的信息轉變成人可以看到的信息(加密解密,壓

原创 第七天(okhttp主線流程源碼)

Okhttp源碼主要涉及到的到有以下幾個類 OKHttpClient Request Response Call Callback 簡單用法 OkHttpClient client = new OkHttpClient.

原创 第八天(okhttp之連接池)

okhttp的網絡請求是基於socket請求,面不是原始的HttpConnection來操作的,但是Socket是很耗性能的,爲什麼Okhttp性能好速度快,是因爲他有做網絡請求緩存,還有一個就是他有一個連接池 連接池:主要目的就是把閒置

原创 詳細講解下Hook技術,以Hook點擊事件來示範

Hook技術:  Hook就是有一段程序邏輯一直走下去,我們可以捕獲到其中間的一些邏輯,加於處理然後再讓他接着執行下去; 比如Android裏面的setOnclickListener這個方法. 正常我們是這樣操作的 Te

原创 Rxjava從使用到原碼的解析七: Rxjava異常型操作符

Rxjava異常型操作符 onErrorReturn 當發射onError事件的時候,就會攔截這個事件 onErrorResumeNext 跟onErrorReturn 差不多,只是onErrorResumeNext 返回的是一個被觀察