原创 Android常見內存泄漏原因和解決辦法

推薦閱讀(瞭解Java虛擬機的原理,垃圾回收算法,堆和棧的區別) : Java虛擬機JVM整理 https://blog.csdn.net/ahou2468/article/details/105313444 Java中的堆和棧的區別 h

原创 內存分析工具之LeakCanary2.4使用整理

目錄   1.LeakCanary是什麼? 2.LeakCanary有什麼優點? 3.LeakCanary如何引入到項目中? 3.1引入leakcanary-android依賴 3.2確認LeakCanary是否運行 3.3LeakCan

原创 內存分析工具LeakCanary是如何工作的

一旦LeakCanary被安裝,它自動檢測和報告內存泄漏,分4步: 檢測保留下來的對象; 導出堆信息; 分析堆信息; 對內存泄漏進行分類; 目錄   1.檢測保留下來的對象 2.導出堆文件 3.分析堆文件 4.對內存泄漏進行分類 5.其他

原创 12.React Native文件創建、查看、下載、上傳-react-native-fs

目錄 1.react-native-fs是什麼? 2.react-native-fs支持哪些功能? 3.react-native-fs如何使用? 4.react-native-fs功能介紹? 5.文件操作說明 5.1文件目錄說明 5.2文

原创 Activity之Fragment詳解和回退

目錄   1.Fragment是什麼? 2.Fragment的生命週期? 3.Fragment添加方式? 3.1在 Activity 的佈局文件內聲明片段 3.2通過編程方式將片段添加到某個現有 ViewGroup 4.編程方式動態添加,

原创 22.React Native避免鍵盤對TextInput遮擋一

目錄 1.KeyboardAvoidingView 2.react-native-keyboard-aware-scroll-view 3.Keyboard Module 4.QQ聊天示例 4.1實現類似QQ聊天效果,點擊輸入框以後可以繼

原创 Java虛擬機JVM整理

目錄   1.虛擬機JVM是什麼? 2.虛擬機執行流程圖 3.類加載系統 3.1類加載系統流程 3.2自定義類加載器 4.運行時數據區 4.1字節碼加載流程 4.2運行時數據區劃分 4.3內存溢出實例 4.3.1堆溢出 4.3.2虛擬機棧

原创 23.React Native觸摸事件處理學習;

目錄 1.什麼是觸摸事件 2.基礎觸摸事件組件 3.React Native單組件觸摸響應 3.1申請成爲響應者和釋放響應者 3.2合成事件介紹-evt 4.嵌套組件事件傳遞 4.1正常事件響應順序 4.2父視圖攔截事件傳遞 5.手勢識別

原创 OkHttp概述

目錄   1.OkHttp是什麼? 2.Get方式請求URL 3.Post方式提交數據到服務器 4.注意事項 5.引用OkHttp庫 6.MockWebServer 1.OkHttp是什麼? HTTP是現代應用網絡的方式請求協議。這是我們

原创 Android之OkHttp源碼分析二請求流程

目錄   1.OkHttp主流程分析圖 2.OkHttp主流程源碼分析 2.1.OkHttp完整的請求示例 2.2.新建OkHttpClient對象,new OkHttpClient() 2.2.構建Request請求 2.3.構建Rea

原创 PtrClassicFrameLayout 下拉刷新控件源碼分析

目錄 1.PtrClassicFrameLayout是什麼? 2.PtrClassicFrameLayout優點有哪些? 3.PtrClassicFrameLayout關鍵類說明? 3.1.PtrFrameLayout 3.2.PtrUI

原创 Android Retrofit詳解(retrofit:2.3.0)

目錄 1.Retrofit是什麼? 2.Retrofit如何使用? 2.1創建HTTP請求的API接口 2.2請求執行 3.註解詳情 3.1請求方法註解 3.2標記請求數據類型 3.3註解參數 4.GSON和Converter 5.RxJ

原创 RxJava線程變換之observeOn與subscribeOn

目錄 1.observeOn() 2.subscribeOn() 3.其他 在藉助Observable實現請求網絡接口我們經常會發現會指定subscribeOn()和observeOn()所屬線程,那麼爲什麼要指定所屬線程呢? api

原创 Android冷啓動優化及實踐

目錄 1.冷啓動 1.1冷啓動是什麼? 1.2.冷啓動流程分析 1.3冷啓動優化 1.3.1黑白屏問題 1.3.2APP啓動時間過長問題 1.3.3解決APP啓動時間過長問題 2.溫啓動 2.1從用戶體驗分析 3.熱啓動  目錄 1.冷啓

原创 Java常見排序算法及對應的時間複雜度和空間複雜度

排序算法經過了很長時間的演變,產生了很多種不同的方法。對於初學者來說,對它們進行整理便於理解記憶顯得很重要。每種算法都有它特定的使用場合,很難通用。因此,我們很有必要對所有常見的排序算法進行歸納。 排序大的分類可以分爲兩種:內排序和外排序