原创 通俗易懂的雙親委託

雙親委託模型 一、什麼是雙親委託 ​ 雙親委派模型,就是如果一個類加載器收到了類加載請求,它並不會自己先去加載,而是把這個請求委託給父類的加載器去執行,如果父類加載器還存在其父類加載器,則進一步向上委託,依次遞歸,請求最終將到達頂

原创 富文本處理TextView顯示富文本的三種方案

TextView顯示富文本的三種方案 背景 ​ 在做Android開發的時候,大家可能會經常遇到這種需求:一個textview控件上想展示一段聲明,聲明的大部分內容是正常的很色字體,書名號引用的各種文件條款,使用藍色字體顯示,類似

原创 getText 與getString的區別

getText 與getString的區別 1.從源碼的註釋中可以看出 getText返回了帶有格式化信息的字串,getString返回了無格式化信息的字串 /** * Return a localized, styled Ch

原创 實時代碼檢測

實時代碼檢測(checkstyle pmd lint) 背景:每個公司都會有自己的編碼規範,來維護項目代碼,增加可讀性,但是規範類的東西需要開發者有很強的自覺性,往往會因爲開發者的懶惰或者個人水平、習慣等原因,導致最終的執行結果不

原创 ANR 分析流程

ANR 分析流程 一、基本流程 1.確定anr發生的時間(通過event_log搜索“am_anr”或打印trace時間點判斷) 2.查看CPU佔用情況(通過adblog搜索"ANR in",搜索total關鍵字,查看CPU的整體

原创 BindService標準寫法(包含服務端與客戶端)

BindService標準寫法 在使用bindservice時,經常會忽略掉死亡回調的作用,下面提供一個標準的bindService的使用流程(客戶端),僅供參考 import android.app.Activity; impor

原创 BindService標準寫法

BindService標準寫法 在使用bindservice時,經常會忽略掉死亡回調的作用,下面提供一個標準的bindService的使用流程,僅供參考 import android.app.Activity; import and

原创 ConstraintLayout

ConstraintLayout Google官方API傳送門:https://developer.android.google.cn/reference/android/support/constraint/ConstraintLa

原创 adb 常用命令

adb 常用命令 ###過濾關鍵字 adb logcat | grep ###根據進程id 篩 adb logcat -v process |grep DMUI ###掛載system目錄爲可讀寫 adb

原创 Git 的基本用法

Git 的基本用法 版本回退(知道commit id 就可以切回任意位置 git reset --hard ID) 回退到上一個版本 git reset --hard HEAD^ 回退到上n個版本

原创 GSON源碼解析

Gson源碼解析 Gson的解析原理大致分爲如下兩種情況。 1.如果是通過GsonBuilder創建的Gson對象,那麼就用自定義的TyperAdapter來完成json的解析 2.如果是通過new Gson()創建的Gson對象,那

原创 泛型詳解

泛型 Java SE5 引入了泛型的概念,泛意爲廣泛,型是類型。所以泛型就是能廣泛適用的類型。 產生泛型的原因 ​ 在JDK5.0之前,容器存儲的對象都只具有java的通用類型:Object。單根繼承結構意味着所有東西都是Object

原创 Android 動態權限申請

Android 動態權限申請 1.Android6.0以下系統,只要在mainfest中註冊了,則自動授權,不會彈出權限詢問的對話框。 2.Android6.0系統,同一組權限中如果有一個權限動態授權,則改組的所有的權限自動授權(需要

原创 ImageLoader詳解(簡單使用,源碼分析,策略理解)

ImageLoader詳解(簡單使用,源碼分析,策略理解) 整體流程 簡單使用 ImageLoaderConfiguration:全局配置:主要有線程類、緩存大小、磁盤大小、圖片下載與解析的配置。 DisplayImageOptio

原创 在WebView中構建網絡應用

原文鏈接地址 在WebView中構建網絡應用 如果你想在你的客戶端應用上引入一個Web應用(僅僅是一個Web頁),你就可以使用WebView。WebView是一個允許你在你的Activity佈局中展示Web頁面的View類的實現類。它