原创 關於crash捕獲的那些事

關於crash捕獲的那些事   Android應用不可避免地會發生crash,也稱之爲奔潰,其可能由於Android系統底層的bug,也可能是由於不充分的機型適配或者是糟糕的網絡狀況。當crash發生時,系統會kill掉正在執行的

原创 Android進階知識(二十七):Activity的啓動過程

Android進階知識(二十七):Activity的啓動過程   Activity組件的主要作用是展示一個界面並和用戶交互,其扮演的是一個前臺界面的角色。關於Activity啓動的觸發(Intent)以及相關的啓動模式等,筆者在A

原创 Android進階知識(二十八):Service的工作過程

Android進階知識(二十八):Service的工作過程   Service是一種計算型組件,用於在後臺執行一系列計算任務。Service分爲兩種工作狀態:啓動狀態——主要用於執行後臺計算;綁定狀態——主要用於其他組件和Serv

原创 Android進階知識(三十):ContentProvider的工作過程

Android進階知識(三十):ContentProvider的工作過程   ContentProvider是一種數據共享型組件,用於向其他組件乃至其他應用共享數據。需要注意的是ContentProvider內部的insert、d

原创 Android進階知識(二十九):BroadcastReceiver的工作過程

Android進階知識(二十九):BroadcastReceiver的工作過程   BroadcastReceiver是一種消息型組件,用於在不同的組件乃至不同的應用之間傳遞消息。BroadcastReceiver的工作過程主要包

原创 Android進階知識(三十一):Android性能優化

Android進階知識(三十一):Android性能優化   Android設備作爲一種移動設備,不管內存還是CPU的性能都受到了一定的限制,這意味着Android程序不可能無限制地使用內存和CPU資源,過多地使用內存會導致程序內

原创 Android進階知識(二十六):Android中的緩存策略

Android進階知識(二十六):Android中的緩存策略   緩存策略在Android中有着很廣泛的使用場景,尤其在圖片加載的情景下,緩存策略更爲重要。在圖片加載的情景下,緩存的目的在於提高程序的效率,同時解決不必要的流量開銷

原创 Android進階知識(二十三):Android的線程

Android進階知識(二十三):Android的線程   線程是Android的一個重要概念,從用途來說,線程分爲主線程和子線程。 線程 作用 主線程 進程所擁有的線程,在Java中默認情況下一個進程只有一個線程,

原创 Android進階知識(二十二):Android的消息機制

Android進階知識(二十二):Android的消息機制 一、Android的消息機制概述   Android的消息機制主要是指Handler的運行機制,Handler的運行需要底層的MessageQueue和Looper的支撐

原创 Android進階知識(二十五):Bitmap簡介及其高效加載

Android進階知識(二十五):Bitmap簡介及其高效加載 一、Bitmap   Bitmap代表一個位圖,在Android中指的是一張圖片,可以是png、jpg等格式的圖片。BitmapDrawable裏封裝的圖片就是Bit

原创 Android進階知識(二十四):Android的線程池

Android進階知識(二十四):Android的線程池   相比於線程,線程池有三點優點:   ① 重用線程池中的線程,避免因爲線程的創建和銷燬所帶來的性能開銷。   ② 能有效控制線程池的最大併發數,避免大量的線程之間因互相搶

原创 Android進階知識(二十一):Window的創建過程

Android進階知識(二十一):Window的創建過程   View是Android中的視圖呈現方式,但是View不能單獨存在,它必須依附於Window,因此有視圖的地方就有Window。這一篇章筆者將分析Activity、Di

原创 Android進階知識(二十):理解Window和WindowManager

Android進階知識(二十):理解Window和WindowManager   Window表示一個窗口的概念,其實際上是View的直接管理者;它是一個抽象類,具體實現是PhoneWindow。Window的創建可以通過Wind

原创 Android進階知識(十九):屬性動畫及動畫使用注意事項

Android進階知識(十九):屬性動畫及動畫使用注意事項   View動畫只能支持四種簡單操作,除此之外View動畫一個最大的缺陷:只是改變View的顯示效果,並不會真正的改變View的屬性。具體來說:例如屏幕左上角有一個But

原创 Android進階知識(十八):View動畫、幀動畫與View動畫的特殊應用

Android進階知識(十八):View動畫、幀動畫與View動畫的特殊應用   Android的動畫可以分爲三種:View動畫、幀動畫和屬性動畫,其實幀動畫也屬於View動畫的一種,只不過它和平移、旋轉等常見的View動畫在表現