原创 RxJava--Scheduler (線程控制 )

Scheduler調度器,相當於線程控制器 在不指定線程的情況下, RxJava 遵循的是線程不變的原則,即:在哪個線程調用 subscribe(),就在哪個線程生產事件;在哪個線程生產事件,就在哪個線程消費事件。如果需要切換線

原创 熱更新原理

對於熱更新的問題就是了解兩個點的問題: 如何加載補丁包,也就是如何加載dex 文件的過程(dex是補丁包,更改的文件都在補丁包中) 修復後的類如何替換掉舊的類 通過這篇文章給大家介紹下我理解的熱更新的邏輯,需要先了解一些關係到

原创 記:jni編譯 armeabi 報錯

使用命令編譯so /Users/jsj/Library/Android/sdk/ndk-bundle/ndk-build 錯誤提示: Android NDK: The armeabi ABI is no longer suppo

原创 in-class initialization of non-static data member is a C++11 extension [-Wc++11-extensions

warning: in-class initialization of non-static data member is a C++11 extension [-Wc++11-extensions] 起因: 項目中爲了兼容老版本

原创 java 中的類加載器

-------------- Android 進階解密筆記—類加載器 ------------------------- ClassLoader的類型(兩種) 系統類加載器 自定義類加載器 系統類加載器(三種) Boots

原创 PriorityQueue

PriorityQueue優先級隊列是不同於先進先出隊列的另一種隊列。每次從隊列中取出的是具有最高優先權的元素。 需要實現Comparator接口,實現按照自己的意願進行優先級排列的隊列 如果不提供Comparator的話,優先隊列中

原创 LruCache原理

LruCache 裏面最要有幾個重要因素 設置LruCache緩存的大小,一般爲當前進程可用容量的1/8 重寫sizeOf方法,計算出要緩存的每張圖片的大小 int maxMemory = (int) (Runtime.getRunt

原创 View 的滑動衝突

解決方案: 1. 外部攔截法 2. 內部攔截法 外部攔截法 指通過父容器進行攔截處理,外部攔截需要重寫父容器的onInterceptTouchEvent 方法,在內部做相應的攔截 @Override public boole

原创 算法--簡單選擇排序

簡單選擇排序 原理:選擇一個固定的位置,不斷的跟其他位置的值去比較 通過圖說明: 對 4, 6, 5, 9, 2, 8進行排序 第1輪:從第1個開始,逐個與其後面的進行比較,將較小的值前置,進行交換,結果爲2,6,5,9,4,8結果如下圖

原创 RxJava2.0使用

RxJava 2.0 使用 引用 compile 'io.reactivex.rxjava2:rxandroid:2.0.1' compile 'io.reactivex.rxjava2:rxjava:2.0.1'

原创 總結Android 性能優化的幾個方面

一 、總結Android 性能優化的幾個方面 1. 佈局優化 儘量減少佈局文件的層級,這樣Android 在繪製的時候工作量減少了,就會提高性能 刪除佈局中無用的控件和層級 選擇使用性能較低的ViewGroup,比如RelativeLa

原创 java 虛擬機內存分配

內存結構: Java程序在運行時,需要在內存中分配空間,爲了提高運算效率,有對空間進行了不同區域的劃分,因爲每一片區域都有特定的處理數據方式和內存管理方式 共分配了5塊區域,每區域中處理方式不同 棧內存、堆內存、 方法區、本地方法區、寄存

原创 RxJava2.0 基本使用,和場景

RxJava接觸挺久了,但是在實際項目中大部分都是配合retrofit使網絡請求使用,其他需求比較少,就是想用的時候會忘記怎麼使用,所以這裏做個筆記,希望也能幫到他人 本文基於RxJava2.0 RxJava 自己覺得知道下面幾點就比較清

原创 IntentService 使用與原理

IntentService 簡介 在Service裏面不能直接進行耗時操作,一般都需要去開啓子線程,如果自己去管理Service的生命週期以及子線程難免會不完善,Android提供了一個類,IntentService。 IntentSe

原创 RxJava--RxBinding

RxBinding 是 Jake Wharton 的一個開源庫,它提供了一套在 Android 平臺上的基於 RxJava 的 Binding API。所謂 Binding,就是類似設置 OnClickListener 、設置 TextW