原创 Leetcode數據結構與算法(五)

[0065]漢明距離兩個整數之間的漢明距離指的是這兩個數字對應二進制位不同的位置的數目。給出兩個整數 x 和 y,計算它們之間的漢明距離。注意:0 ≤ x, y < 231.示例:輸入: x = 1, y = 4 輸出: 2 解釋: 1

原创 D-Bus 詳解:從編譯到應用

一、簡介D-Bus是一種消息總線系統,是進程間通信 (IPC)的系統。從體系結構上講,它分爲三層:一個庫libdbus,它允許兩個應用程序相互連接並交換消息。一個消息總線守護程序的可執行文件dbus-daemon,建立在libdbus之上,

原创 Android源碼下載(Mac移動硬盤)

創建區分大小寫的磁盤映像Mac系統默認磁盤,文件系統運行不區分大小寫。Git 並不支持此類文件系統,而且此類文件系統會導致某些 Git 命令(例如 git status)的行爲出現異常。因此,建議始終在區分大小寫的文件系統中對 AOSP 源

原创 Leetcode數據結構與算法(四)

[0049]二進制中1的個數請實現一個函數,輸入一個整數,輸出該數二進制表示中 1 的個數。例如,把 9 表示成二進制是 1001,有 2 位是 1。因此,如果輸入 9,則該函數輸出 2。示例 1:輸入:000000000000000000

原创 Leetcode數據結構與算法(三)

Leetcode數據結構與算法###[0033]從尾到頭打印鏈表輸入一個鏈表的頭節點,從尾到頭反過來返回每個節點的值(用數組返回)。示例 1:輸入:head = [1,3,2] 輸出:[2,3,1]限制:0 <= 鏈表長度 <= 10000

原创 [學習筆記]Android開發藝術探索:Android的Drawable

6.1 Drawable簡介Drawable表示的是一種可以在Canvas上進行繪製的抽象概念,它的種類有很多,最常見的就是顏色和圖片。優點:使用簡單,比自定義View成本低很多,非圖片類型的Drawable佔用空間較小。全面理解Drawa

原创 [學習筆記]Android開發藝術探索:理解RemoteViews

RemoteViews是一種遠程View,可以在其他進程中顯示,爲了能夠更新它的界面,RemoteViews提供了一組基礎操作用於跨進程更新它的界面。本章會介紹RemoteViews在通知欄和桌面小部件上的應用,分析RemoveViews的

原创 [學習筆記]Android開發藝術探索:綜合技術(Crash、Multidex、動態加載、反編譯)

使用CrashHandler來獲取應用的crash信息檢測崩潰並瞭解詳細的crash信息:首先需實現一個uncaughtExceptionHandler對象,在它的uncaughtException方法中獲取異常信息並將其存儲到SD卡或者上

原创 [學習筆記]Android開發藝術探索筆記:Activity的生命週期和啓動模式

Activity 生命週期的全面分析典型情況下的生命週期分析onCreate : 生命週期第一個方法,可做一些初始化工作;onRestart : Activity 重新啓動,由不可見變爲可見;onStart : Activity 正在啓動,

原创 [學習筆記]Android開發藝術探索:IPC機制

Android IPC簡介IPC爲進程間通訊,兩個進程之間進行數據交換的過程。IPC不是Android所獨有的,任何一個操作系統都有對應的IPC機制。Windows上通過剪切板、管道、油槽等進行進程間通訊。Linux上通過命名空間、共享內容

原创 [學習筆記]Android開發藝術探索:動畫深入分析

Android動畫分爲三種: View動畫、幀動畫、屬性動畫View動畫View動畫的作用對象是View,支持四種動畫效果:平移 、縮放、旋轉、透明。四種變換效果對應着Animation四個子類: TranslateAnimation 、

原创 [學習筆記]Android開發藝術探索:Android的消息機制

從開發的角度來說,Handler是Android消息機制的上層接口。Handler的運行需要底層的 MessageQueue 和 Looper 的支撐。MessageQueue是一個消息隊列,內部存儲了一組消息,以隊列的形式對外提供插入和刪

原创 [學習筆記]Android開發藝術探索:Bitmap的加載和Cache

Bitmap的高效加載BitmapFactory類提供四種方法:decodeFile、decodeResource、decodeStream和decodeByteArray;其中decodeFile和decodeResource間接的調用了

原创 [學習筆記]Android開發藝術探索:四大組件的工作過程之ContentProvider

ContentProvider是一個內存共享型組件,他通過Binder向其他組件乃至其他應用提供數據,當ContentProvider所在的進程啓動的時候,ContentProvider會同時啓動並且發佈到AMS中,需要注意的是,這個時候C

原创 Android開發藝術探索筆記

《Android開發藝術探索》這本書在幾年前就已經買了,陸陸續續看過幾次,都沒有看完,沒有理解透。最近重讀《Android開發藝術探索》,讀了兩次,第一次讀完感覺還有大量的知識點沒有理解,再次閱讀,練習書中例子,記讀書筆記,理解加深了幾分。