原创 android4.4的文件管理器documentsui源碼解析

在4.4以上的版本中如果通過如下的Intent調用Activity: 1 2 3 4 5 6 final Intent intent = new Intent(Intent.ACTION_GET_CONTENT); // T

原创 Windows下給Android app進行系統簽名

[size=x-small]在做項目過程中,會碰到部分APP需要系統權限(AndroidManifest.xml中manifest節點中加入android:sharedUserId="android.uid.system"這個屬性),如果

原创 android系統體系結構

Android 是google公司針對手機開發的一個平臺,並公佈了其中大部分代碼,其大部分應用程序都是用JAVA開發的,畢竟它是商業性的產品嘛,有所保留也是理所 當然的。對於搞嵌入式linux開發的人來說我們可以從中學習其長處,也算得上是

原创 android編譯生成的out目錄結構分析 .

Android編譯後的目錄結構 Android編譯完成後,將在根目錄中生成一個out文件夾,所有生成的內容均放置在這個文件夾中。   out文件夾目錄結構如下所示: out/ -- CaseCheck.txt -- casecheck

原创 頭文件中定義變量和聲明變量的方法

頭文件中定義變量和聲明變量的方法   #ifndef     _GLOBLE_H       #define     _GLOBLE_H       extern   int     a;       extern   int    

原创 Android中應用程序如何獲得系統簽名權限

有些庫的使用條件比較苛刻,要求同一簽名的程序纔可以獲得訪問權。此時即便是在AndroidManifest.xml中添加了相應的permission,依舊會得到沒有xx訪問權限的問題。比如Android.permission.ACCESS

原创 超過130個你需要了解的vim命令

從 1970 年開始,vi 和 vim 就成爲了程序員最喜愛的文本編輯器之一。5年前,我寫了一個問自己名爲 “每個程序員都應該知道的 100 個 vim 命令” 這次算是之前那篇文章的改進版,希望你會喜歡。   基礎 :e filenam

原创 系統調用之文件訪問

1:write系統調用   系統調用write的作用是,把緩衝區buf的前nbytes字節寫入到與文件描述符fildes關聯的文件中,同時它會返回實際寫入的字節數。如果返回0,就表示爲寫出任何數據;如果是-1,就表示在write

原创 Source Insight 使用方法入門

前言:    這是我重新修改以前的內容而改寫的,工作後學到了許多公司中編寫代碼快速的方法,從而放棄了那種 ”搞linux 應該把vi使用到精通的地步“思想,發現無論我怎麼練習vi,還是沒有使用source insight編寫代碼速度快,因

原创 內核編譯

第一次是在vmware中做的 fedora9,編譯2.6.30.10,結果被卡在lvm這個問題上,未解決,之後應該有比較全面的解釋LVM 後來在pc機上硬盤安裝的fedora9中編譯,一次成功。 從http://www.kern

原创 windows7使用Source insight上遠程修改ubuntu共享內核源碼 .

由於本人閱讀喜歡使用source insight。前段時間接觸了linux核代碼,而這份代碼只能放在ubuntu服務器上編譯,剛開始的時候是在windows上修改,完了之後再copy到服務器上去編譯,這樣很麻煩,效率也很低,經過網上搜索和

原创 Android Hal 分析

本文是基於android4.0.3.對應其他低版本的代碼,可能有所差異,但基本大同小異。       Android的HAL是爲了保護一些硬件提供商的知識產權而提出的,是爲了避開linux的GPL束縛。思路是把控制硬件的動作都放到了And

原创 Android中JNI的使用方法

首先看一下Android平臺的框架圖:(網上盜用)        可以看到Android上層的Application和ApplicationFramework都是使用Java編寫, 底層包括系統和使用衆多的LIiraries都是C/C+

原创 JNI

android JNI是連接android Java部分和C/C++部分的紐帶,完整使用JNI需要Java代碼和C/C++代碼。其中C/C++代碼用於生成庫文件,Java代碼用於引用C /C++庫文件以及調用C/C++方法。 andro

原创 鏈接

鏈接表示指向文件的指針,當創建一個新文件的時候,對應目錄下便產生了一個指向該文件的指針,該指針將文件名和磁盤的某位置建立關聯。當在命令中指明此文件名的時候,文件指針就指向了存放該文件的磁盤位置。   鏈接分爲兩種,一種是硬鏈接,