原创 江南帶你從源碼教你解析Volley

Volley其實是對okhttp的請求的再一次封裝。 okhttp,httpUrlconnection,httpClitConnection volley不僅可以對json,String,array等可以請求外,還可以對圖片進行網

原创 Asynctask的解析

在我剛剛接觸AsyncTask的時候我也很鬱悶其中是怎麼進行串行與並行的? 在安卓的1.6以前其實本來是採用的串行執行任務,在1.6-3.0之間爲了併發訪問,安卓修改了能執行並行的,後來由於可以執行並行大家在很多地方都使用的導致線

原创 2017年上班第一週:想起《嘿,老頭!》裏黃磊一句話:那生活也不能只靠回憶啊,那還得繼續啊,總得活下去啊

轉眼已經是來上海的第三個年頭,新的一年,繼續潛行 最近看到facebook扎克伯克一番話,很有味道,你不需要等到夠優秀才開始,你應該立即開始去變得優秀。 1寒假兩週發生的事情 1.1參加同學婚禮 1.2走親戚 2學習的新技術

原创 開發中不經意的自動拆裝箱影響性能問題

在我們開發中會經常用到基本類型的包裝類,但是我們很少會去考慮使用過程中帶來的問題 下面看一個例子: 例子demo 源碼分析原因 總結 問題1:爲什麼integer j=127;integer j2=127; j==j2

原创 grade那些事

我的gradle配置參數 在gradle.properties中會配置這些參數 org.gradle.daemon=true org.gradle.parallel=true org.gradle.jvmargs=-X

原创 handler的內存泄漏問題

Handler的內存泄漏的問題? 所謂的內存泄漏就是這個對象沒有任何使用價值了但是由於任然存在引用導致內存被佔用了垃圾回收器回收不了。。。。。 至於爲什麼會出現內存泄漏呢? 這裏面的原理是很深很深的,因爲new 的handl

原创 江南帶你從源碼看handler內部實現的機制

介紹handler之前首先我們來看下ThreadLocal類的用法 private static ThreadLocal<String> sthread; public static void main(String[]

原创 我們手指觸碰屏幕都做了什麼?

1:首先我自定義一個LinearLayout,和TextView,重寫它們的onInterceptTouchEvent和onTouchEvent方法,觀察它們都返回值。 前者onInterceptTouchEvent是在View

原创 IntentService從源碼解析

子線程的生命週期就是run方法結束了就結束了,這個我要說的一點就是HandlThread類,這裏是由於quene.next()一直監聽着消息隊列,處於堵塞狀態,所以這個線程是創建了就一直存在的。案例說安卓的主線程run方法執行完了

原创 重寫與重載編譯時運行時不同之處

在我們平時在java基礎學習到多態的時候我們知道一個父類引用指向子類對象的時候,編譯時看父類,運行時看子類。那麼抱着這個認識看下下面這個demo,以及給你帶來怎麼樣的思考? 先看Demo 圖片解釋 總結     p

原创 如何解決本地大批量數據的更新,和後臺的同步,講解socket的IPC和socket的通訊

Android的功夫,在Android之外。 這句話我很認同,Android Framework只不過是對底層系統的封裝,要想深入理解它,必須熟悉JNI、讀得懂C++、理解Java虛擬機、Linux系統甚至彙編、指令集等等。但是並不意味這

原创 nodejs的部署的問題

因爲我們要管理很多依賴, 最後我們選擇使用autod來管理, autod:一個自動分析項目所有的文件,獲取所有的項目依賴和它們的版本的工具。 autod 同時可以根據我們傳遞的一些選項和參數,來直接更新 package.json 文件:

原创 nodejs的相關問題2

Express框架 我們可以簡單的搭建一下express的使用 var express = require('express'); var app = express(); app.use(express.static(__dirn

原创 類似於talkingdata的靈動功能的實現

隨着業務的發展,每個公司都希望能夠完善自己的數據採集,這裏我們採用了AOP的方式對數據進行無埋點收集。 但是有時候我們希望可以通過配置的方式決定收集什麼數據,這個配置最好是讓不懂開發的人去配置,比如運營,領導 等,那麼如何做成可視化的界面

原创 也許是史上最詳細的gradle教程

如果有類似疑問的同學可以好好閱讀該博客 defaultConfig{},android{},buildType{}等標籤帶便爲什麼這麼寫,代表什麼意思? project.gradle與每個moudle的gradle的執行順序是怎麼樣的關係