原创 Android中的Looper,MessageQueue,Handler的理解

Looper中的ThreadLocal對象sThreadLocal保存有Looper對象,在其構造方法中會獲取當前的線程並且創建一個消息隊列mQueue private Looper(boolean quitAllowed) {

原创 Android App 內存泄露

Android App 內存泄露之Handler Handler也是造成內存泄露的一個重要的源頭,主要Handler屬於TLS(Thread Local Storage)變量,生命週期和Activity是不一致的 ,Handler引用

原创 Https和Http

協議基礎不同:Https在Http下加入了SSL層, 通訊方式不同:Https在數據通信之前需要客戶端、服務器進行握手(身份認證),建立連接後,傳輸數據經過加密,通信端口443。 Http傳輸數據不加密,明文,通信端口80。

原创 Java中字符串switch的實現細節

自從Java允許在switch及case語句中使用字符串以來,許多開發人員都使用了這一特性,不過如果使用整型或者枚舉的話會更好。這是JDK7中最受歡迎的特性之一,同樣的還有自動資源管理以及多異常捕獲。儘管我個人不太喜歡這個特性,因爲使用

原创 Android開發相關的Blog推薦

Android開發相關的Blog推薦——跟隨大神的腳步才能成長爲大神 分類: Android開發經驗2015-02-11 11:53 12777人閱讀 評論(44) 收藏 舉報 經驗碼農blog開發者開源項目     本篇

原创 Scroller類及scroll相關方法總結

Scroller是一個輔助滾動的類,有一個startScroll方法,顧名思義就是開始滾動,但是他的源碼中並沒有真正滾動的代碼,看下startScroll源碼 /** * Start scrolling by providin

原创 電視應用開發遇到的問題的總結

電視應用開發中主要用到遙控器的的按鍵事件,按鍵事件和觸摸事件一樣最初被Activity捕獲,初步傳遞到最裏面的View,返回false的話拋給上一層,最終拋回給activity,但是遙控器按鍵也分爲按下和擡起,但是默認一般只處理按下的邏輯

原创 重磅教程!幫你全面徹底搞定MATERIAL DESIGN的學習筆記

自從Material design發佈以來,可樂橙就在一直收集相關素材與資源,研究別人的作品。這套設計風格非常鮮明,帶有濃郁的Google式嚴謹和理性哲學,深得我心。實際上,光是研究素材和別人作品,就能發現一些明顯的規律,做出幾分相似的

原创 What is the difference between addView and addViewInLayout?

轉自stackoverflow   Its generally a bad idea to call addView inside onLayout because addView internally triggers a r

原创 hasStableIds的作用

如果hasStableIds返回false的話 每次調用notifyDataSetChanged方法時 adapter就會判斷getItemId 並且在只調用那些Item發生變化的getView方法,說白了就是通過getItemId來判

原创 ThreadLocal存儲原理

首先每一個Thread都有一個ThreadLocal.Values類型的localValues變量,ThreadLocal的set,get方法如下: public void set(T value) { Thread cu

原创 Android drawable selector foucus,pressed,selected的區別

android:state_pressed 是否按下,如一個按鈕觸摸或者點擊。android:state_focused 是否取得焦點,比如用戶選擇了一個文本框。android:state_hovered 光標是否懸停,通常與focuse

原创 2015年Android開發新技術盤點

     又到年末, 利用中午的時間,彙總盤點一下今年Android開發方面的新技術,感覺現在Android開發沒有以前那麼純粹了,出現了很多新的開發模式。2015年影響比較普遍的新技術應該就是Material Design了,畢竟現

原创 final變量

從jdk1.0到今天,JAVA技術經過十餘年的發展,技術上已經發生了巨大的變化.但final變量的定義從它 誕生那天起,就沒有發生任何變化,也就是這十多年它就一直表示它原來的意思. 但遺憾的是,經過十多年仍然有90%的人沒有理解它的真

原创 ADB使用方法及常用命令

ADB是android sdk裏的一個工具, 它的主要功能有:     運行設備的shell(命令行)      管理模擬器或設備的端口映射      計算機和設備之間上傳/下載文件      將本地apk軟件安裝至模擬器或andro