原创 搭建Android源碼調試環境(一)——下載編譯Android源碼

1. 環境準備工作 運行Ubuntu18.04系統的主機一臺,或者更新的版本應該也可以。(我這裏使用的是Linux mint 18.3,Ubuntu的衍生版本) 內存配置越高越好。我的是i7-4710HQ + 16G內存 磁盤空間

原创 單反同步刪除RAW文件

單反同步刪除RAW文件 我使用的是D750,使用jpeg+raw雙存儲的方式。在旅行的過程中,通過相機自帶wifi,將jpeg照片同步到手機,然後就可以瀏覽,刪除,修圖,發票圈了。這樣在旅行的過程中就篩選了大部分照片,回來的時候就不用

原创 通過wifi快速同步單反照片到手機——使用Airnef Python腳本

前言 本人使用的是尼康D750,自帶wifi功能,奈何配套的Android App太難用了,至於怎麼難用,我這裏就不細說了,用過的都懂。總不能白瞎了wifi功能吧。找了一陣子發現了兩個第三方通過逆向工程製作的工具。一個是qDslrDa

原创 Android Matrix 筆記

Android Graphic Matrix表達式 一. 如何計算? 例子: Matrix matrix = new Matrix(); float[] points = new float[] { 10.0f, 10.0f }; m

原创 Android Framework學習——如何加入並編譯自定義的模塊

研究AndroidFramework源碼免不了要加入自己的模塊進行調試學習。這裏將會介紹如何加入自己的模塊,並將相應的模塊push到真機上進行調試 編寫Android.mk 具體在哪裏編寫呢? 這裏先解釋一下目錄的含義 /home/k

原创 Android性能優化——內存優化

內存分析 由於有些圖片截取的區域較大,可能看不清楚上面的字。可以放大查看,Chrome瀏覽器使用鼠標滾輪+ctrl。 原因 爲什麼要進行內存分析? 原因一:頻繁GC導致UI線程卡頓 如果程序出現大量的內存分配和釋放,就意味着產生了頻繁的G

原创 Android性能優化——TraceView的使用

序 最近開發的界面有個奇怪的現象,界面本身邏輯很簡單。就是查詢本地數據庫,並以ListView展示。但是就這個簡單的界面,卻偶爾會出現需要等待兩秒左右的時間才能顯示列表,在性能比較底的手機上還會更久。懷疑是主線程的執行了耗時操作操作。因

原创 Java註解(Annotation)原理詳解

序言 註解在Java中到底是什麼樣的東西?具體是如何實現的? 本文將一層一層深入探究註解的實現原理。爲了儘可能的將分析的過程呈現出來,所以文章包含了大量的截圖和代碼。(ps:如果圖片看不清楚,請將網頁放大來看,chrome可以通過ctr

原创 Android引導頁——可跟蹤定位的引導頁協調器

需求 由於項目需要實現指導新用戶使用App功能的引導頁。 效果圖(這是實現後的截圖了) 分析與解決 顯示引導頁 方案:只要inflate相應的layout,並添加到decorView裏面。 指示的View要對齊到相應功能的按鈕上

原创 Java多線程——鎖(Synchronized、Lock、ReentrantLock、ReadWriteLock、ReentrantReadWriteLock)

synchronized與Lock   synchronized是java中的一個關鍵字,也就是說是Java語言內置的特性。那麼爲什麼會出現Lock呢?   在上面一篇文章中,我們瞭解到如果一個代碼塊被synchronized修飾了,當

原创 動態磁盤轉基本磁盤

很久之前的寫的了,一直沒發。。。 今天公司銷售部門同事的電腦C盤爆滿了,需要擴大C盤。因爲之前離職的同事安裝時候沒注意分區,分了四個主分區,然後windows7會創建多一個100m的系統保留分區,導致出現了5個主分區,但是mbr格式分區

原创 Android性能優化——界面流暢度優化

序言 首先流暢度不僅僅是受到代碼的影響。也會跟機器的硬件配置有關係。所以第一點需要明確的是,流暢度最低保證在哪個硬件配置之上。這樣有了一個基點之後,才能比較好明確優化目標。不然你拿一個兩三年前的機子來做優化。那就真的是吃力不討好的事情。

原创 Android安裝Ubuntu13.10

跟着這篇文章安裝還是遇到了一些問題。在 Android 上玩轉 Linux 問題一: 無法啓動Linux。錯誤mount: mounting /dev/block/loop255 on /data/local/mnt failed: In

原创 try catch 對性能影響

引言 之前一直沒有去研究try catch的內部機制,只是一直停留在了感覺上,正好這週五開會交流學習的時候,有人提出了相關的問題。藉着週末,正好研究一番。 討論的問題 當時討論的是這樣的問題: 比較下面兩種try catch寫法,哪一種

原创 HTC M9 刷機教程(存檔備忘)

轉載至:http://bbs.gfan.com/android-7943814-1-1.html 從HTC One M9開始,HTC取消了以前的hboot,改爲現在的bootloader+download mode。因此,M8的教程不再