原创 觀察者模式初學

觀察者模式 定義很簡單,觀察者模式是關於多個對象想知道一個對象中數據變化情況的一種成熟的模式。 觀察者模式中有一個稱作“主題”的對象和若干個稱作“觀察者”的對象,“主題”和“觀察者”間是一種一對多的依賴關係,當“主題”的狀態發生變化時

原创 Android 8.0編譯過程初步分析

Android 8.0編譯過程分析 概述 要想知道編譯的過程,其實看編譯的腳本,以及編譯時產生的log是比較快的方法。 編譯相關的核心文件位於build/core下,而生成的文件在out/soong下,裏面有編譯過程中產生的編譯相關文

原创 Android 8.0編譯系統簡述

Android 8.0編譯系統簡述 概述 Android 7.0之前,android編譯主要依賴makefile,隨着android工程越來越大,makefile編譯花費時間也越來越多,所以7.0開始逐步引入了kati soong(可

原创 I2S基礎

概念 I2S(Inter—IC Sound)總線,又稱集成電路內置音頻總線,飛利浦公司爲數字音頻設備之間的音頻數據傳輸而制定的一種總線標準,用於音頻設備之間的數據傳輸,廣泛應用於各種多媒體系統。 特點 支持全雙工和半雙工通信。 支持主

原创 ContentProvider詳細介紹(附實例源碼)

1.ContentProvider是什麼?     ContentProvider——內容提供者。它是一個類,這個類主要是對Android系統中進行共享的數據進行包裝,並提供了一組統一的訪問接口供其他程序調用。這些被共享的數據,

原创 程序員必讀書單1.0

作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文鏈接:http://lucida.me/blog/developer-reading-list/ 本文把程序員所需掌握的關鍵知識總結爲三大類1

原创 FL2440之U-Boot移植記錄(一)

開發板:FL2440 uboot版本:u-boot-2010.09    uboot所有版本下載地址爲:ftp://ftp.denx.de/pub/u-boot/                 U-boot,全稱爲Universal

原创 linux驅動入門之hello wrold

第一個驅動程序:Hello World 在linux上,所有的設備都可以看成是文件。我們對設備的所有操作基本上都可以簡化成open、close、read、write、io control這幾個操作。 源代碼 #include <linux

原创 Android初學之第一個Android程序:文件瀏覽器

文件瀏覽器筆記 文件瀏覽器用來讀取android系統中的所有文件和文件夾。具體說明如下: 最上面顯示當前的文件路徑。如果是根目錄,則顯示“/”; 第二行是返回上一級按鈕。如果當前處於根目錄下,則該行不顯示; 若當前是文件夾,則可點擊,進

原创 java 個人編碼規則

Coding Rule 一個文件應只包含一個類或者接口,如果存在私有類或者接口,應放在主類或接口後面 不能有重複代碼,重複代碼應封裝成函數,或者放到基類裏面 統一採用4個空格縮進,務必將代碼編輯軟件的tab設置爲以4個空格替代 類的開始

原创 Linux 字符設備驅動實例筆記

概述 Linux中,一切皆文件,設備也不例外,每一個字符設備都在/dev目錄下對應一個設備文件。所以對於設備的所有操作基本上都可以簡化成open、close、read、write、ioctrl這幾個函數。 在Linux下一個字符設備驅動

原创 LDD字符驅動學習

字符驅動程序 scull ,即“simple character utility for loading localities, 區域裝載的簡單字符工具’”。 是一個操作內存區域的字符設備驅動程序,這片內存區域就相當於一個字符設備。 字符

原创 使用ADB自動切換應用

配合windows BAT簡單測試腳本 獲取當前焦點的應用包名 adb shell dumpsys activity | findstr mFocused 獲取運行過的activity adb shell dumpsys activ

原创 Android Seekbar進度條末端顯示不全的解決方法

調試環境基於Android 6.0。 在調整我們的應用UI時,如果使用到了seekbar,那可能會出現下面這各情況,進度條末端的切圖形狀沒有顯示出來,比如我的切圖末端 是圓弧形,顯示的卻是直角形。 這種情況下可以用如下的方式解決: <

原创 虛擬機與CentOS6.5安裝vmware tools及共享文件夾下/mnt/hgfs/下沒有文件問題

打開虛擬機,點擊虛擬機選項,點擊安裝VMtools,如果已經安裝過了就會顯示重新安裝。如果未安裝,點擊安裝即可。然後我們在光盤驅動器中便可以看到VMtools字樣了.如下圖所示。 接着我們需要進入終端進行安裝,在安裝之前,我們需要更換