共用UID 安裝在裝置中的每一個Android包檔案(.apk)都會被分配到一個屬於自己的統一的Linux使用者ID,並且為它建立一個沙箱,以防止影響其他應用程式(或者其他應用程式影響它)。使用者ID 在應用程式安裝到裝置中時被分配,並且在這個裝置中保持它的永久性。通過Shared User id,擁有同一個User id的多個APK可以配置成運行在同一個進程中.所以預設就是可以互相訪問任意資料. 也可以配置成運行成不同的進程,
如果android的source在android21檔案夾(即Makefile檔案的目錄)下,先執行cd android21,然後可以執行下面的命令;1、make Settings產生Settings.apk的檔案2、 make snod等同於make droid該命令產生一個新的系統映像system.img,速度比make快很多,但不穩定(有的時候不好用)將這個系統映像拷貝至sdk下cp out/target/product/generic/system.img
1. Android編譯系統分析編譯指令碼及系統變數build/envsetup.sh指令碼分析在編譯原始碼之前通常需要在android原始碼頂層目錄執行 . ./build/envsetup.sh 目的是為了使用指令碼 envsetup.sh 裡面定義了一些函數:function help()function get_abs_build_var()function get_build_var()function check_product()function
2010-11-13 12:36 511人閱讀 評論(0) 收藏 舉報 圖1 android 的makefile結構 android的編譯檔案主要依賴於mk檔案,其源碼編譯名字是Android.mk,而不我們常見的Makefile檔案。 android目錄下的Makefile檔案,include了build/core目錄下的main.mk檔案。main.mk檔案
今天,我們來研究一下Intent,沒錯,就是前面說過的比較難理解的那個東西,希望通過這篇文章之後,你發現前面那句話其實是不對的。前文中說過,Intent就像Activity之間的雙面膠,就字面意思而言:“意圖, 意向, 目的”, 基本上可以詮釋這個對象的作用。它裡麵包含的就是一些資訊,這些資訊能夠告訴我們當前發生了什麼,以及想要幹什麼。我覺得和前面的事件驅動中的事件非常 像,不同的是,它不僅僅包含事件,還包含一些資料資訊。Intent或者也可以說像一個需求說明一樣,說明了當前的事件以及一些資料,
1、android檔案系統的結構 android源碼編譯後得到system.img,ramdisk.img,userdata.img映像檔案。其中, ramdisk.img是emulator的檔案系統,system.img包括了主要的包、庫等檔案,userdata.img包括了一些使用者資料,emulator載入這3個映像檔案後,會把 system和 userdata分別載入到 ramdisk檔案系統中的system和
文章目錄 使用Eclipse開發平台調試結合Android SDK調試使用JUnit調試
首先下載下android源碼並編譯,網上的資料特別多,可以參考一下這個網站http://blog.csdn.net/liaoshengjiong/archive/2009/03/04/3957749.aspx按照網站上的步驟,將android核心編譯成功,如果不出意外的話,在out/target/product/generic目錄下會產生三個檔案,分別是ramdisk.img、sytem.img、userdata.img。這三個檔案到底有什麼用呢?下面開始分析一下。首先在linux終端下使用命
在out/target/product/generic下產生的三個鏡像檔案:ramdisk.img,system.img,userdata.img以及它們對應的分類樹root,system,data。ramdisk.img是根檔案系統,system.img包括了主要的包、庫等檔案,userdata.img包括了一些使用者資料,android載入這3個映像檔案後,會把 system和 userdata分別載入到 ramdisk檔案系統中的system和 data目錄下。
splash1 :開機畫面,Nandroid備份為splash1.imgrecovery :裝置序號為mtd1,該分區是復原模式(即開機按Home+End進入的介面),Nandroid備份為recovery.imgboot :裝置序號為mtd2,底層作業系統核心開機磁碟分割,掛載 為/目錄,Nandroid備份為boot.imgsystem :裝置序號為mtd3,G1的Android核心平台,掛 載為/system目錄,通常為唯讀,Nandroid備份為system.imgcache
文章目錄 使用SharedPreferences儲存資料檔案儲存體資料網路儲存資料總結說明 在前面的2篇文章:Android SQLite解析、Android
adb登入上去,執行telnetd發現可以執行,說明android系統內建了telnetd但從用戶端串連發現每次介面一閃而過,無法成功登入,懷疑是android內建的telnetd有問題,於是改用busybox的telnetd,發現存在同樣的問題。抓包也沒看出什麼異常錯誤提示,就是每次使用putty登入一閃而過就完了。在網上搜尋了一下,終於找到原因了:因為android系統裡面沒有login程式,所以我們從用戶端登入後系統找不到要啟動的Shell,就直接退出了(telnetd預設執行/bin/l
把busybox移植到android下後想玩玩syslogd,於是先把busybox連結成一個syslogd以方便後續直接敲命令啟動:ln -s busybox syslogdls -llrwxrwxrwx root root 2013-01-06 19:38 syslogd -> busyboxOK,現在可以啟動它了:1|root@android:/data/data/test #
從Java來看我們可以結合Timer,TimerTask,Handler來實現定時重新整理,但是,從Android來說建議用Handler,Runnable。(我們把Timer,TimerTask, Handler的方法以下命名為A方法。 Handler,Runnable命名為B方法)。在這裡說下,實現一個功能有多種方法,每種方法都有自己的特點,所以不必糾結別人實現的比自己好,而放棄自己的東西。功能實現必須從無到有,慢慢最佳化,取人之長補己之短。才能慢慢進步。(呵呵扯淡..)。在Android
android中藍牙裝置按鍵的監聽和一般的系統按鍵監聽相同,只不過是處理不同的KeyEvent,這裡說下藍芽發出的上一首,下一首的KeyEvent的值,監聽到並做相應的處理即可。 public boolean onKeyDown(int keyCode, KeyEvent event) { switch (keyCode) { case KeyEvent.KEYCODE_MEDIA_NEXT:// 下一首 // 實現下一首對應的介面
修正版-Android模擬器 SDK 2.3 下載與安裝教程首先聲明是轉帖 一、首先下載最新的SDK 2.3檔案Windows2.3版:android-sdk_r08- windows.zip:http://dl.google.com/android/android-sdk_r08-windows.zip,
Android的源碼都是分塊管理的,比如你想看bootloader的源碼你可以用git執行git clone git://android.git.kernel.org/kernel/lk.git
ArrayAdapter 總是感覺寫自己的部落格才更能夠學到東西,網上儘管有很多好的資料,但是參差不齊,需要浪費大量時間才能夠找到最需要的,索性寫自己最需要的東西。 Adapter是適配器的意思,在Android中大量的使用到了ListView,而ListView需要與各種適配器結合才能夠使用。不同的場合使用不同的適配器,所以總結一下最常用的會對自己以後很有協助 ArrayAdapter(數組適配器)一般用於顯示一行文本資訊,所以比較容易。public
在android的開發中,尤其是與訪問網路有關的開發,都要判斷一下手機是否串連上了網路,下面是一個判斷是否串連網路的嗲嗎片段:package cn.com.karl.util;import com.kubu.main.R;import android.app.Activity;import android.app.AlertDialog;import android.content.Context;import android.content.DialogInterface;import
涉及檔案:frameworks/base/cmds/bootanimation/bootanimation.hframeworks/base/cmds/bootanimation/bootanimation.cppframeworks/base/cmds/bootanimation/bootanimation_main.cppframeworks/base/cmds/bootanimation/Android.mk另外要準備一個wav格式的開機音樂檔案(時間不要太長了)在bootanimatio