原创 Android APK大小優化
APK壓縮前大小:39.9MB 資源優化 刪除無用資源 使用Android Studio 的Analyze - Run Inspection By Name... 選項 搜索unused resources 查找無用資源。並對其刪除。 刪除
原创 Retrofit源碼閱讀
前言 爲什麼要看Retrofit源碼? 因爲目前項目使用的Retrofit網絡請求。想去詳細瞭解下。 這次閱讀重點關注的點通過Create方法追蹤工作流程 如何進行線程切換 用到反射如何去優化性能的 怎麼解析參數和註解的
原创 3、無重複最長字符串
題目 給定一個字符串。請你找出其中不含有重複字符的 最長子串 的長度。 示例 輸入 s="abcabcbb" 輸出 3 因爲無重複字符的最長子串是 "abc",所以其長度爲 3。 示例 輸入: s = "bbbbb" 輸出: 1
原创 鏈表簡介
鏈表簡介 鏈表是一種線性數據結構 鏈表有兩種分別爲 單鏈表 僞代碼如下: //Kotlin class SingleListNode constructor(@JvmField var value:Int?=null){ @J
原创 一次Room在項目中的實踐
一、前言 在項目中很多很多的頁面用了很多的枚舉,而產品和需求發對完發完版本這個枚舉更改過很多次。或者前端與後端更改沒有通知我們移動端,導致出現移動端前端不一樣的展示的問題,所以決定枚舉有後端返回 key,value的形式我們自己去匹配查找
原创 Android集成信鴿推送遇到的問題
一、華爲廠商通道遇到的問題 需要在華爲官網配置SHA256 在華爲官網發送推送時不能使用信鴿返回的通用token,需要使用 otherPushToken否則會報無效token。日誌如下: I/XINGE: [a] Already b
原创 返回數組分界點下標
public class 返回數組分界點下標 { public static void main(String[] args) { int[] arrays = {1, 2, 3, 3, 2, 1};
原创 斐波那契數列
Github import org.w3c.dom.Node; import java.util.HashMap; public class 斐波那契數列 { public static void main(String[] a
原创 樓梯走法
Github public class 樓梯走法 { private static int i = 0; public static void main(String[] args) { calc("",
原创 快排
Github 單邊循環法 public class 快排 { public static void main(String[] args) { int[] arrays = {8, 0, 9, 10, 8, 4,
原创 鏈表環和反轉
Github public class 鏈表環和反轉 { public static int count; public static void main(String[] args) { Node nod
原创 二進制1的個數
Github public static void main(String[] args) { // num("00000000000000000000000000001011"); // System.ou
原创 二叉樹深度
Github public class 二叉樹深度 { public static void main(String[] args) { TreeNode treeNode1 = new TreeNode(1);
原创 EvenBus的基本使用和源碼分析
前言 由於最近項目中頻繁使用EventBus,所以想了解下它內部原理,我們得"知其然知其所以然"。在這裏總結一下,方便自己複習。 歡迎start我的GitHub項目,裏面會不定時更細Android 、java、設計模式相關知識! Event
原创 Android 自定義View餅圖
前言 因爲目前看到公司設計圖初稿有個餅圖,一開始想用github上的一些開源的框架,但是感覺框架太全用到的只有一個餅圖,並且自己擼一個也是一個學習進步的過程。 先看下效果圖: 繪製扇形 1、先確定圓的區域 RectF mRect = ne