原创 Android 圖片緩存處理

異步下載 / 本地緩存 異步下載 大家都知道,在android應用中UI線程5秒沒響應的話就會拋出無響應異常,對於遠程獲取大的資源來說,這種異常還是很容易就會拋出來的,那麼怎麼避免這種問題的產生。在android中提供兩種方法來

原创 如何安全退出已調用多個Activity的Application?

對於單一Activity的應用來說,退出很簡單,直接finish()即可。當然,也可以用killProcess()和System.exit()這樣的方法。但是,對於多Activity的應用來說,在打開多個Activity後,如果想在最後打

原创 JAVA線程安全之synchronized關鍵字的正確用法

JAVA線程安全關於synchronized關鍵字的用法,今天才知道原來我一直錯了。以爲用了synchronized關鍵字包住了代碼就可以線程同步安全了。 測試了下。發現是完全的錯了。synchronized必須正確的使用纔是真正的線

原创 單線程模型中Message、Handler、Message Queue、Looper之間的關係

簡單的說,Handler獲取當前線程中的looper對象,looper用來從存放Message的MessageQueue中取出Message,再有Handler進行Message的分發和處理. 一個Handler允許你發送和處理Messa

原创 關於代碼中寫註釋,你不得不知道的那些事兒

引   程序員圈有一個笑話 最討厭在寫代碼的時候寫註釋, 最討厭別人的代碼裏面不寫註釋 那爲啥要寫註釋呢?    我就以自己的親身經歷和理解開始闡述吧:    這段時間在微店實習, 最開始乾的事情就是將原來北京團隊的代碼遷

原创 關於Android service的一些基礎知識集合

  1.什麼是Service以及描述下它的生命週期。Service有哪些啓動方法,有什麼區別,怎樣停用Service? 在Service的生命週期中,被回調的方法比Activity少一些,只有onCreate, onStart, onDe

原创 開發Android應用程序,原生開發VS中間件

發現了個寫Android程序的工具叫rexsee,在rexsee官網上看着挺牛的,“忘記Java和eclipse,使用HTML和JavaScript開發Android應用程序”。剛開始覺得這玩意兒吹大了,不過看了看介紹還挺像回事。  

原创 android 觸摸(Touch)事件、點擊(Click)事件的區別(詳細解析)

針對屏幕上的一個View控件,Android如何區分應當觸發onTouchEvent,還是onClick,亦或是onLongClick事件? 在Android中,一次用戶操作可以被不同的View按次序分別處理,並將完全響應了用戶一

原创 ANDROID垃圾回收器機制和強引用、軟引用、弱引用、虛引用

GC是垃圾收集的意思(GabageCollection)。和JAVA一樣,ANDROID系統也是由GC來自動回收內存的。android中一個應用的啓動,android系統都會爲這個應用分配一個dalivk虛擬機,以便這個應用運行在這個獨

原创 Android使用BitmapRegionDecoder加載超大圖片方案

BitmapRegionDecoder主要用於顯示圖片的某一塊矩形區域,如果你需要顯示某個圖片的指定區域,那麼這個類非常合適。 對於該類的用法,非常簡單,既然是顯示圖片的某一塊區域,那麼至少只需要一個方法去設置圖片;一個方法傳入顯示的

原创 橫豎屏切換時候Activity的生命週期的總結--絕對全面

總結: 1、不設置Activity的android:configChanges時,切屏會重新調用各個生命週期,切橫屏時會執行一次,切豎屏時會執行兩次   2、設置Activity的android:configChanges="orie

原创 一個比較有意思的算法題,猴子選大王

看到一個比較有意思的算法題,用java實現了一下: 一羣猴子,編號是1,2,3 …n,這羣猴子(n個)按照1至n的順序圍坐一圈。從第1只開始數,每數到第m個,該猴子就要離開此圈,這樣依次下來,最後一隻出圈的猴子爲大王。輸入m和n,輸出猴

原创 解決IllegalStateException: Can not perform this action after onSaveInstanceState

今天使用Fragment的時候,出現了這個錯誤 IllegalStateException: Can not perform this action after onSaveInstanceState: E/AndroidRuntim

原创 Android組件化和插件化開發

組件化開發就是將一個app分成多個模塊,每個模塊都是一個組件(Module),開發的過程中我們可以讓這些組件相互依賴或者單獨調試部分組件等,但是最終發佈的時候是將這些組件合併統一成一個apk,這就是組件化開發。插件化開發和組件化開發略有

原创 HTML使用DIV+css實現展開全文的功能

手機app展示圖文內容太長,導致底部評論等功能需要下拉到最底部才能看到,影響用戶使用,所以用webview加載html頁面,實現了展開全文的功能。直接上代碼。 <!DOCTYPE html> <html lang="en"> <head>