原创 Okhttp基本使用及源碼分析

該文章所用的okhttp源碼版本:4.2.0 基本使用 Okhttp的使用步驟分爲三步 : 1.創建OkHttpClient,初始化一些連接參數。 OkHttpClient client = new OkHttpClient();

原创 Android線程池及線程類概述

概要 通常在程序中執行耗時任務會用到線程,在大量使用線程情況下又會用到線程池。本文將介紹Android開發中與線程相關的各個類,讓大家對線程管理有個大概的認知,下面先從線程池說起。 線程池 當程序中有大量的網絡請求時,就會頻繁的創建和

原创 數字簽名與數字證書入門級解讀

這篇文章不解釋具體的概念定義而是以通俗易懂的語言來解讀數字簽名與數字證書,我們先來理一理需要用到的知識點。 算法基礎 摘要算法 摘要算法是單向算法,明文只能轉換成密文,密文卻無法轉換成明文,這種算法也叫HASH算法,如SHA1,MD5

原创 Android組件化架構

Android組件化架構 當APP規模達到一定時,利用組件化架構能夠有效的簡化APP的邏輯。按業務邏輯分組,各個團隊只需關注於自己的模塊實現,編譯發佈APP時再把各個模塊集合在一起。組件化架構方式能讓這一切變得簡單而易於維護,特別適用

原创 ARouter組件化框架原理分析

ARouter組件化框架原理分析編譯階段運行階段初始化加載理念跳轉 ARouter是阿里巴巴開源的組件化架構框架,能幫助組件化項目中實現不同模塊間的跳轉,以及AOP面向切面的編程,能對頁面跳轉的過程進行很好的干預。本文將從源碼角度入手

原创 主流熱修復框架介紹

本文彙總了主流的熱修復框架,並對每個框架的特性做了簡單的介紹,主流方案比較如下圖。 方案對比 Andfix 阿里百川HotFix Sophix 微信Tinker 餓了麼Amigo 美團Robust 即時生效 yes ye

原创 App優化建議

Android App性能優化可以從代碼,圖片,佈局,耗電量,App瘦身等方面來分析入手。以下主要是總結了在這幾方面編碼的一些建議。 代碼 1.避免內存泄漏 Handler,Thread的生命週期與activity不一致 靜態變量持有

原创 Android App異常檢測及處理

Android App常見的異常可分爲三種:ANR,Crash及OOM。當異常發生時如何正確的獲取日誌定位問題非常重要。本文針對這三種異常分別給出了處理建議,並提供了一些日誌收集框架及日誌上傳的思路。 ANR ANR(Applicat

原创 Android View的繪製流程

ViewRoot ViewRoot對應於ViewRootImpl類,它是連接WindowManager和DecorView的紐帶,也可以說是Window和View的橋樑,他主要功能有: 完成View的繪製過程,包括measure、lay

原创 Android Window 理解

Window概念 Window是一個抽象類,它的唯一實現類是PhoneWindow,Android中的所有視圖都是通過Window來呈現的。WindowManager則爲Window的管理者,負責添加,刪除,更新window中的View。