校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 系統源碼(源碼系統)

系統源碼(源碼系統)

熱門標簽:保定鹿聆外呼系統 呼叫中心外呼線路怎么解決 南昌仁和如何申請400開頭電話 杭州外呼系統哪個好 電銷機器人有免費的嗎 寺廟地圖標注 電話機器人都多少錢 隴南地圖標注 智能語音外呼系統眾籌

前言

技術博客終于可以恢復正常的更新速度了系統源碼,原因是我編寫的進階書籍的初稿已經完成系統源碼,竊以為它將會是應用書籍中最有深度的一本系統源碼,可以說是《Android開發藝術探索》的姊妹篇。在這本書的最后一章我會分析Android底層源碼,但是畢竟是一本Android應用開發的書,對于底層源碼閱讀也只能帶大家入個門。因此,在博客中我會新開一個“系統源碼解析”的系列,該系列的開篇就是本篇文章。

1.Android系統架構

Android系統分為五層,從上到下依次是應用層、應用框架層、系統運行庫層、硬件抽象層和Linux內核層。

應用層

系統內置的應用程序以及非系統級的應用程序都是屬于應用層。負責與用戶進行直接交互,通常都是用進行開發的。

應用框架層(Java Framework)

應用框架層為開發人員提供了可以開發應用程序所需要的API,我們平常開發應用程序都是調用的這一層所提供的API,當然也包括系統的應用。這一層的是由Java代碼編寫的,可以稱為Java Framework。下面來看這一層所提供的主要的組件。

名稱

功能描述

Activity Manager(活動管理器)

管理各個應用程序生命周期以及通常的導航回退功能

Location Manager(位置管理器)

提供地理位置以及定位功能服務

Package Manager(包管理器)

管理所有安裝在Android系統中的應用程序

Notification Manager(通知管理器)

使得應用程序可以在狀態欄中顯示自定義的提示信息

Resource Manager(資源管理器)

提供應用程序使用的各種非代碼資源,如本地化字符串、圖片、布局文件、顏色文件等

Telephony Manager(電話管理器)

管理所有的移動設備功能

Package Manager(包管理器)

管理所有安裝在Android系統中的應用程序

Window Manager(窗口管理器)

管理所有開啟的窗口程序

Content Providers(內容提供器)

使得不同應用程序之間可以共享數據

View System(視圖系統)

構建應用程序的基本組件

表1

系統運行庫層(Native)

系統運行庫層分為兩部分,分別是C/C++程序庫和Android運行時庫。下面分別來介紹它們。

1.C/C++程序庫

C/C++程序庫能被Android系統中的不同組件所使用,并通過應用程序框架為開發者提供服務,主要的C/C++程序庫如下表2所示。

名稱

功能描述

OpenGL ES

3D繪圖函數庫

Libc

從BSD繼承來的標準C系統函數庫,專門為基于嵌入式Linux的設備定制

Media Framework

多媒體庫,支持多種常用的音頻、視頻格式錄制和回放。

SQLite

輕型的關系型數據庫引擎

SGL

底層的2D圖形渲染引擎

SSL

安全套接層,是為網絡通信提供安全及數據完整性的一種安全協議

FreeType

可移植的字體引擎,它提供統一的接口來訪問多種字體格式文件

表2

2.Android運行時庫

運行時庫又分為核心庫和ART(5.0系統之后,Dalvik虛擬機被ART取代)。核心庫提供了Java語言核心庫的大多數功能,這樣開發者可以使用Java語言來編寫Android應用。相較于JVM,Dalvik虛擬機是專門為移動設備定制的,允許在有限的內存中同時運行多個虛擬機的實例,并且每一個Dalvik 應用作為一個獨立的Linux 進程執行。獨立的進程可以防止在虛擬機崩潰的時候所有程序都被關閉。而替代Dalvik虛擬機的ART 的機制與Dalvik 不同。在Dalvik下,應用每次運行的時候,字節碼都需要通過即時編譯器轉換為機器碼,這會拖慢應用的運行效率,而在ART 環境中,應用在第一次安裝的時候,字節碼就會預先編譯成機器碼,使其成為真正的本地應用。

硬件抽象層(HAL)

硬件抽象層是位于操作系統內核與硬件電路之間的接口層,其目的在于將硬件抽象化,為了保護硬件廠商的知識產權,它隱藏了特定平臺的硬件接口細節,為操作系統提供虛擬硬件平臺,使其具有硬件無關性,可在多種平臺上進行移植。 從軟硬件測試的角度來看,軟硬件的測試工作都可分別基于硬件抽象層來完成,使得軟硬件測試工作的并行進行成為可能。通俗來講,就是將控制硬件的動作放在硬件抽象層中。

Linux內核層

Android 的核心系統服務基于Linux 內核,在此基礎上添加了部分Android專用的驅動。系統的安全性、內存管理、進程管理、網絡協議棧和驅動模型等都依賴于該內核。

Android系統的五層架構就講到這,了解以上的知識對以后分析系統源碼有很大的幫助。

2.Android系統源碼目錄

我們要先了解Android系統源碼目錄,為后期源碼學習打下基礎。關于源碼的閱讀,你可以訪問來閱讀系統源碼。當然,最好是將源碼下載下來。下載源碼可以使用清華大學開源軟件鏡像站提供的Android 鏡像:。如果覺得麻煩也可以查找國內的網盤進行下載,推薦使用該百度網盤地址下載:,它提供了多個Android版本的的源碼下載。

整體結構

各個版本的源碼目錄基本是類似,如果是編譯后的源碼目錄會多增加一個out文件夾,用來存儲編譯產生的文件。Android7.0的根目錄結構說明如下表所示。

Android源碼根目錄

描述

abi

應用程序二進制接口

art

全新的ART運行環境

bionic

系統C庫

bootable

啟動引導相關代碼

build

存放系統編譯規則及generic等基礎開發包配置

cts

Android兼容性測試套件標準

dalvik

dalvik虛擬機

developers

開發者目錄

development

應用程序開發相關

device

設備相關配置

docs

參考文檔目錄

external

開源模組相關文件

frameworks

應用程序框架,Android系統核心部分,由Java和C++編寫

hardware

主要是硬件抽象層的代碼

libcore

核心庫相關文件

libnativehelper

動態庫,實現JNI庫的基礎

ndk

NDK相關代碼,幫助開發人員在應用程序中嵌入C/C++代碼

out

編譯完成后代碼輸出在此目錄

packages

應用程序包

pdk

Plug Development Kit 的縮寫,本地開發套件

platform_testing

平臺測試

prebuilts

x86和arm架構下預編譯的一些資源

sdk

應用程序包

packages

sdk和模擬器

system

底層文件系統庫、應用和組件

toolchain

工具鏈文件

tools

工具文件

Makefile

全局Makefile文件,用來定義編譯規則

表3

從表3可以看出,系統源碼分類清晰,并且內容龐大且復雜。接下來分析packages中的內容,也就是應用層部分。

應用層部分

應用層位于整個Android系統的最上層,開發者開發的應用程序以及系統內置的應用程序都是在應用層。源碼根目錄中的packages目錄對應著系統應用層。它的目錄結構如表4所示。

packages目錄

描述

apps

核心應用程序

experimental

第三方應用程序

inputmethods

輸入法目錄

providers

內容提供者目錄

screensavers

屏幕保護

services

通信服務

wallpapers

墻紙

表4

從目錄結構可以發現,packages目錄存放著系統核心應用程序、第三方的應用程序和輸入法等等,這些應用都是運行在系統應用層的,因此packages目錄對應著系統的應用層。

應用框架層部分

應用框架層是系統的核心部分,一方面向上提供接口給應用層調用,另一方面向下與C/C++程序庫以及硬件抽象層等進行銜接。 應用框架層的主要實現代碼在/frameworks/base和/frameworks/av目錄下,其中/frameworks/base目錄結構如表5所示。

/frameworks/base目錄

描述

/frameworks/base目錄

描述

api

定義API

cmds

重要命令:am、app_proce等

core

核心庫

data

字體和聲音等數據文件

docs

文檔

graphics

圖形圖像相關

include

頭文件

keystore

和數據簽名證書相關

libs

location

地理位置相關庫

media

多媒體相關庫

native

本地庫

nfc-extras

NFC相關

obex

藍牙傳輸

opengl

2D/3D 圖形API

packages

設置、TTS、VPN程序

sax

XML解析器

services

系統服務

telephony

電話通訊管理

test-runner

測試工具相關

tests

測試相關

tools

工具

wifi

wifi無線網絡

表5

C/C++程序庫部分

系統運行庫層(Native)中的 C/C++程序庫的類型繁多,功能強大,C/C++程序庫并不完全在一個目錄中,這里給出幾個常用且比較重要的C/C++程序庫所在的目錄位置。

目錄位置

描述

bionic/

Google開發的系統C庫,以BSD許可形式開源。

/frameworks/av/media

系統媒體庫

/frameworks/native/opengl

第三方圖形渲染庫

/frameworks/native/services/surfaceflinger

圖形顯示庫,主要負責圖形的渲染、疊加和繪制等功能

external/sqlite

輕量型關系數據庫SQLite的C++實現

表6

講完 C/C++程序庫部分,剩下的部分我們在表3已經給出:Android運行時庫的代碼放在art/目錄中。硬件抽象層的代碼在hardware/目錄中,這一部分是手機廠商改動最大的一部分,根據手機終端所采用的硬件平臺會有不同的實現。

如需要了解產品詳情,可電話咨詢專業客服人員:15358521011(微信同號)

標簽:中山 玉林 海南 寧波 樂山 淮安 徐州 常州

巨人網絡通訊聲明:本文標題《系統源碼(源碼系統)》,本文關鍵詞  系統,源碼,系統,源碼,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《系統源碼(源碼系統)》相關的同類信息!
  • 本頁收集關于系統源碼(源碼系統)的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    日韩一区二区不卡| 国产一区二区三区免费看| 三级一区在线视频先锋| 久久国产欧美日韩精品| 国产成人鲁色资源国产91色综| 成人黄页在线观看| 欧美日韩一区中文字幕| www国产成人免费观看视频 深夜成人网| 最新国产成人在线观看| 亚洲精品乱码久久久久久日本蜜臀| 午夜精品久久久久久久| 毛片av一区二区| 成人的网站免费观看| 欧美中文字幕一二三区视频| 欧美一级精品大片| 国产精品美女久久久久aⅴ | 成人在线一区二区三区| 97se亚洲国产综合自在线不卡| 欧美日韩五月天| 国产日韩av一区| 亚洲成年人网站在线观看| 激情六月婷婷久久| 91国偷自产一区二区三区观看| 日韩一区二区免费视频| 亚洲色图制服丝袜| 激情五月激情综合网| 在线视频一区二区三区| 久久久久久久av麻豆果冻| 亚洲色图欧洲色图婷婷| 激情成人综合网| 欧美亚洲国产bt| 日本一区二区免费在线| 肉色丝袜一区二区| 91麻豆123| 久久久综合激的五月天| 图片区日韩欧美亚洲| 成人黄页在线观看| 久久久青草青青国产亚洲免观| 亚洲一区二区在线观看视频 | 国产精品久久久久久久岛一牛影视 | 另类成人小视频在线| 日本韩国欧美一区二区三区| 2023国产精品| 日韩黄色小视频| 一本色道a无线码一区v| 国产无遮挡一区二区三区毛片日本| 日本在线观看不卡视频| 在线看国产一区| 国产精品国产三级国产普通话99| 精品中文字幕一区二区| 欧美日韩国产美| 亚洲免费在线视频| 成人免费视频视频在线观看免费| 精品国产乱码久久久久久蜜臀 | 一本一本久久a久久精品综合麻豆| 久久精品人人做人人爽人人| 日韩精品一二三区| 欧美视频在线不卡| 亚洲精品高清在线| 91污片在线观看| 国产精品久久毛片a| 国产在线一区观看| 精品久久久久久综合日本欧美| 亚瑟在线精品视频| 在线看不卡av| 亚洲一区在线观看免费 | 国产蜜臀av在线一区二区三区| 美女脱光内衣内裤视频久久网站 | 亚洲成a人片在线观看中文| 成人免费va视频| 国产色一区二区| 国产精品91xxx| 国产日韩欧美高清| 国产盗摄一区二区| 久久久国产精品麻豆| 韩国成人在线视频| 久久一区二区三区国产精品| 九色综合狠狠综合久久| 日韩区在线观看| 国内外成人在线| 精品国产乱码91久久久久久网站| 蜜臀av一区二区在线观看| 欧美一级片免费看| 美女看a上一区| 2欧美一区二区三区在线观看视频| 国产一区美女在线| 国产亚洲精品福利| 成人av电影在线| 亚洲你懂的在线视频| 91国偷自产一区二区三区观看 | 91在线精品秘密一区二区| 综合av第一页| 91黄色小视频| 日日欢夜夜爽一区| 欧美大片在线观看| 国产成人免费视频网站| 亚洲视频在线一区| 欧美日韩小视频| 美女精品一区二区| 国产女人18水真多18精品一级做| k8久久久一区二区三区| 亚洲精品视频观看| 欧美男同性恋视频网站| 麻豆免费精品视频| 国产亚洲欧美中文| 91成人免费在线视频| 视频一区国产视频| 久久久久久99久久久精品网站| 成人午夜看片网址| 亚洲福利国产精品| 2017欧美狠狠色| 99视频在线观看一区三区| 亚洲一区在线观看免费 | 五月婷婷久久综合| 精品久久五月天| eeuss鲁片一区二区三区| 亚洲国产精品一区二区久久| 日韩女优制服丝袜电影| 成人免费福利片| 视频在线观看国产精品| 国产清纯白嫩初高生在线观看91| 一本久道久久综合中文字幕| 日韩精品国产精品| 日本一区二区在线不卡| 在线观看国产日韩| 国产一区在线看| 亚洲一区二区三区中文字幕 | 久久草av在线| 综合欧美亚洲日本| 日韩女优毛片在线| 在线日韩一区二区| 国产乱对白刺激视频不卡| 一区二区三区中文字幕| xfplay精品久久| 欧美中文字幕一区二区三区亚洲| 国产一区二区视频在线播放| 一区二区三区在线观看欧美| 久久久久久久免费视频了| 欧美性猛片aaaaaaa做受| 国产精品一区二区免费不卡| 洋洋成人永久网站入口| 国产亚洲综合在线| 555www色欧美视频| 一本久久a久久免费精品不卡| 国产一区二区在线视频| 亚洲一区免费观看| 国产片一区二区| 欧美大片在线观看一区| 欧美亚洲国产bt| 不卡在线观看av| 国产精品18久久久久久久久久久久| 午夜视黄欧洲亚洲| 18成人在线视频| 久久精品视频网| 日韩一区二区三区电影| 在线看国产日韩| 99久久精品免费看国产| 国产尤物一区二区在线| 日韩激情一二三区| 一区二区在线观看视频在线观看| 国产拍欧美日韩视频二区| 欧美一区永久视频免费观看| 在线观看一区日韩| eeuss国产一区二区三区| 国产不卡免费视频| 极品少妇xxxx偷拍精品少妇| 亚洲v中文字幕| 亚洲综合在线五月| 日韩一区在线看| 国产精品丝袜91| 中文字幕av在线一区二区三区| 精品国产免费人成电影在线观看四季 | 欧美日韩三级视频| 欧美自拍偷拍一区| 色吧成人激情小说| 91美女在线视频| www.亚洲国产| 成人av电影在线播放| 成人性生交大合| 国产成人在线视频网址| 国产成人免费在线视频| 国产一区二区三区黄视频 | 欧美日韩精品免费观看视频| 日本道精品一区二区三区| 91老师片黄在线观看| 色哟哟在线观看一区二区三区| 99re成人在线| 91啦中文在线观看| 在线观看日韩av先锋影音电影院| 一本大道久久a久久精品综合| 92精品国产成人观看免费| 91影院在线观看| 欧美在线一区二区| 欧美日韩一级二级三级| 欧美欧美欧美欧美首页| 91精品国产91久久久久久最新毛片| 欧美一级午夜免费电影| 日韩精品中文字幕一区二区三区 | 亚洲精品一区二区三区香蕉| 亚洲精品一区二区三区精华液 |