亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2254 | 回復: 1
打印 上一主題 下一主題

Android源代碼結構的簡介 [復制鏈接]

論壇徽章:
0
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2009-06-17 09:42 |只看該作者 |倒序瀏覽

Google提供的Android包含了原始Android的目標機代碼,主機編譯工具、仿真環(huán)境,代碼包經(jīng)過解壓縮后,第一級別的目錄和文件如下所示:

.
|– Makefile        (全局的Makefile)
|– bionic          (Bionic含義為仿生,這里面是一些基礎的庫的源代碼)
|– bootloader      (引導加載器)
|– build           (build目錄中的內(nèi)容不是目標所用的代碼,而是編譯和配置所需要的腳本和工具)
|– dalvik          (JAVA虛擬機)
|– development     (程序開發(fā)所需要的模板和工具)
|– external        (目標機器使用的一些庫)
|– frameworks      (應用程序的框架層)
|– hardware        (與硬件相關的庫)
|– kernel          (Linux2.6的源代碼)
|– packages        (Android的各種應用程序)
|– prebuilt        (Android在各種平臺下編譯的預置腳本)
|– recovery        (與目標的恢復功能相關)
`– system          (Android的底層的一些庫)
bionic目錄展開一個級別的目錄如下所示:
bionic/
|– Android.mk
|– libc
|– libdl
|– libm
|– libstdc++
|– libthread_db
`– linker
bootloader目錄展開的兩個級別目錄:
bootloader/
`– legacy
    |– Android.mk
    |– README
    |– arch_armv6
    |– arch_msm7k
    |– fastboot_protocol.txt
    |– include
    |– libboot
    |– libc
    |– nandwrite
    `– usbloader
build目錄展開的一個級別的目錄如下所示:
build/
|– buildspec.mk.default
|– cleanspec.mk
|– core                       (各種以mk為結尾的文件,它門是編譯所需要的Makefile)
|– envsetup.sh
|– libs
|– target                     (包含board和product兩個目錄,為目標所需要文件)
`– tools                      (編譯過程中主機所需要的工具,一些需要經(jīng)過編譯生成)
其中,core中的Makefile是整個Android編譯所需要的真正的Makefile,它被頂層目錄的Makefile引用。
envsetup.sh是一個在使用仿真器運行的時候,用于設置環(huán)境的腳本。
dalvik目錄用于提供Android JAVA應用程序運行的基礎————JAVA虛擬機。
development目錄展開的一個級別的目錄如下所示:
development
|– apps                       (Android應用程序的模板)
|– build                      (編譯腳本模板)
|– cmds
|– data
|– docs
|– emulator                   (仿真相關)
|– host                       (包含windows平臺的一些工具)
|– ide
|– pdk
|– samples                    (一些示例程序)
|– simulator                  (大多是目標機器的一些工具)
`– tools
在emulator目錄中qemud是使用QEMU仿真時目標機器運行的后臺程序,skins是仿真時手機的界面。
samples中包含了很多Android簡單工程,這些工程為開發(fā)者學習開發(fā)Android程序提供了很大便利,可以作為模板使用。
external目錄展開的一個級別的目錄如下所示:
external/
|– aes
|– apache-http
|– bluez
|– clearsilver
|– dbus
|– dhcpcd
|– dropbear
|– elfcopy
|– elfutils
|– emma
|– esd
|– expat
|– fdlibm
|– freetype
|– gdata
|– giflib
|– googleclient
|– icu4c
|– iptables
|– jdiff
|– jhead
|– jpeg
|– libffi
|– libpcap
|– libpng
|– libxml2
|– netcat
|– netperf
|– neven
|– opencore
|– openssl
|– oprofile
|– ping
|– ppp
|– protobuf
|– qemu
|– safe-iop
|– skia
|– sonivox
|– sqlite
|– srec
|– strace
|– tagsoup
|– tcpdump
|– tinyxml
|– tremor
|– webkit
|– wpa_supplicant
|– yaffs2
`– zlib
在external中,每個目錄表示Android目標系統(tǒng)中的一個模塊,可能有一個或者若干個庫構成。其中:
opencore為PV(PacketVideo),它是Android多媒體框架的核心。
webkit是Android網(wǎng)絡瀏覽器的核心。
sqlite是Android數(shù)據(jù)庫系統(tǒng)的核心。
openssl是Secure Socket Layer,一個網(wǎng)絡協(xié)議層,用于為數(shù)據(jù)通訊提供安全支持。
frameworks目錄展開的一個級別的目錄如下所示:
frameworks/
|– base
|– opt
`– policies
frameworks是Android應用程序的框架。
hardware是一些與硬件相關的庫
kernel是Linux2.6的源代碼





packages目錄展開的兩個級別的目錄如下所示:
packages/
|– apps
|   |– AlarmClock
|   |– Browser
|   |– Calculator
|   |– Calendar
|   |– Camera
|   |– Contacts
|   |– Email
|   |– GoogleSearch
|   |– HTMLViewer
|   |– IM
|   |– Launcher
|   |– Mms
|   |– Music
|   |– PackageInstaller
|   |– Phone
|   |– Settings
|   |– SoundRecorder
|   |– Stk
|   |– Sync
|   |– Updater
|   `– VoiceDialer
`– providers
    |– CalendarProvider
    |– ContactsProvider
    |– DownloadProvider
    |– DrmProvider
    |– GoogleContactsProvider
    |– GoogleSubscribedFeedsProvider
    |– ImProvider
    |– MediaProvider
    `– TelephonyProvider
packages中包含兩個目錄,其中apps中是Android中的各種應用程序,providers是一些內(nèi)容提供者(在Android中的一個數(shù)據(jù)源)。
packages中兩個目錄的內(nèi)容大都是使用JAVA編寫的程序,各個文件夾的層次結構是類似的。
prebuilt目錄展開的一個級別的目錄如下所示:
prebuilt/
|– Android.mk
|– android-arm
|– common
|– darwin-x86
|– linux-x86
`– windows
system目錄展開的兩個級別的目錄如下所示:
system/
|– bluetooth
|   |– bluedroid
|   `– brfpatch
|– core
|   |– Android.mk
|   |– README
|   |– adb
|   |– cpio
|   |– debuggerd
|   |– fastboot
|   |– include            (各個庫接口的頭文件)
|   |– init
|   |– libctest
|   |– libcutils
|   |– liblog
|   |– libmincrypt
|   |– libnetutils
|   |– libpixelflinger
|   |– libzipfile
|   |– logcat
|   |– logwrapper
|   |– mkbootimg
|   |– mountd
|   |– netcfg
|   |– rootdir
|   |– sh
|   `– toolbox
|– extras
|   |– Android.mk
|   |– latencytop
|   |– libpagemap
|   |– librank
|   |– procmem
|   |– procrank
|   |– showmap
|   |– showslab
|   |– sound
|   |– su
|   |– tests
|   `– timeinfo
`– wlan
    `– ti
               
               
               

本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u3/96145/showart_1966679.html

論壇徽章:
0
2 [報告]
發(fā)表于 2011-11-25 17:20 |只看該作者
記著
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP