freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

移動端app應用開發(fā)課程論-文庫吧

2024-12-24 10:27 本頁面


【正文】 , Android 的市場占有率最高,上升速度最快。 WP 代表機型:諾基亞 Lumia800 作為軟件巨頭微軟的掌上版本操作系統(tǒng),在與桌面 PC 和 Office 辦公的兼容性方面具有先天的優(yōu)勢,辦公娛樂兩不誤。以商務用機為主,目前市場已顯出頹勢,最新版本為 .支持廠商:中國臺灣 HTC、韓國三星電子、韓國 LG、英國索尼愛立信、諾基亞與 2022 年初正式宣布與微軟合作,將采用 WP7 操作系統(tǒng)。 Windows Mobile 代表機型:多普達 S1 作為 PDA 專用系統(tǒng) WindowsCE 在手機上的一個延伸, WM 系統(tǒng)的推出可以看出微軟對于智能手機操作系統(tǒng)市場的重視。 WM 系統(tǒng)有很多先天的優(yōu)勢,由于硬件要求極高使價格也高了,耗電還是很比較大,穩(wěn)定性相對較差。代表機型:多普達 S P800,夏新、聯想均有涉及。 Symbian 代表機型:諾基亞 N8 Symbian(中文名:塞班)是一個實時性、多任務的純 32 位操作系統(tǒng),具有功耗低、內存占用少等特點,非常適合手機等移動設備使用,經過不斷完善,并長期居于首位,但是 Symbian S60、Symbian3,UIQ 等(尤其是 S60)系統(tǒng)近 兩年亦遭遇到顯著的發(fā)展瓶頸。支持廠商:諾基亞。 MeeGo 代表機型 :諾基亞 N9 MeeGo 是諾基亞和英特爾宣布推出一款基于 Linux 的平臺被稱為 MeeGo,融合了諾基亞的Maemo 和英特爾的 Moblin 平臺。如諾基亞新品 N9 就是采用 系統(tǒng)的。支持廠商:諾基亞。 BlackBerry OS BlackBerry OS 是 RIM 公司獨立開發(fā)出的與黑莓手機配套的系統(tǒng),目前在全世界都頗受歡迎,在此系統(tǒng)基礎上,黑莓的手機更是獨樹一幟的在智能手機市場拼搏,目前也已在中國形成了大筆粉絲。支持廠 商: RIM 三星 Bada bada 是韓國三星公司自行開發(fā)的智能手機平臺,支持豐富功能和用戶體驗的軟件應用,于2022 年 11 月 10 日發(fā)布。 bada 在韓語里是“海洋”的意思。 bada 的設計目標是開創(chuàng)人人能用智能手機的時代。支持廠商:三星 2. Android 架構 湖北大學本科課程設計(論文) 3 架構圖直觀 下面這張圖展示了 Android 系統(tǒng)的主要組成部分: 圖 Android 系統(tǒng)架構(來源于: android sdk) 可以很明顯看出, Android 系統(tǒng)架構由 5 部分組成,分別是: Linux Kernel、 Android Runtime、Libraries、 Application Framework、 Applications。第二部分將詳細介紹這 5 個部分。 架構詳解 現在我們拿起手術刀來剖析各個部分。其實這部分 SDK 文檔已經幫我們做得很好了,我們要做的就是拿來主義,然后再加上自己理解。下面自底向上分析各層。 Linux Kernel Android 基于 Linux 提供核心系統(tǒng)服務,例如:安全、內存管理、進程管理、網絡堆棧、驅動模型。 Linux Kernel 也作為硬件和軟件之間的抽象層 ,它隱藏具體硬件細節(jié)而為上層提供統(tǒng)一的服務。 如果你學過計算機網絡知道 OSI/RM,就會知道分層的好處就是使用下層提供的服務而為上層提供統(tǒng)一的服務,屏蔽本層及以下層的差異,當本層及以下層發(fā)生了變化不會影響到上層。也就是說 各層各司其職,各層提供固定的 SAP( Service Access Point) ,專業(yè)點可以說是 高內聚、低耦湖北大學本科課程設計(論文) 4 合。 如果你只是做應用開發(fā),就不需要深入了解 Linux Kernel 層。 Android Runtime Android 包含一個核心庫的集合,提供大部分在 Java 編程語言核心類庫中可用的功能。每一個Android 應用程序是 Dalvik 虛擬機中的實例,運行在他們自己 的進程中。 Dalvik 虛擬機設計成,在一個設備可以高效地運行多個虛擬機。 Dalvik 虛擬機可執(zhí)行文件格式是 .dex, dex 格式是專為 Dalvik 設計的一種壓縮格式,適合內存和處理器速度有限的系統(tǒng)。 大多數虛擬機包括 JVM 都是基于棧的,而 Dalvik 虛擬機則是基于寄存器的。 兩種架構各有優(yōu)劣,一般而言,基于棧的機器需要更多指令,而基于寄存器的機器指令更大。 dx 是一套工具,可以將 Java .class 轉換成 .dex 格式。一個 dex 文件通常會有多個 .class。由于 dex 有時必須進行最佳化,會使文件大小增加 14 倍,以 ODEX 結尾。 Dalvik 虛擬機依賴于 Linux 內核提供基本功能,如線程和底層內存管理。 Libraries Android 包含一個 C/C++庫的集合,供 Android 系統(tǒng)的各個組件使用。這些功能通過 Android 的應用程序框架( application framework)暴露給開發(fā)者。下面列出一些核心庫: ? 系統(tǒng) C 庫 —— 標準 C 系統(tǒng)庫( libc)的 BSD 衍生,調整為基于嵌入式 Linux 設備 ? 媒體庫 —— 基于 PacketVideo 的 OpenCORE。這些庫支持播放和錄制許多流行的音頻和視頻格式,以及靜態(tài)圖像文件,包括 MPEG 、 MP AAC、 AMR、 JPG、 PNG ? 界面管理 —— 管理訪問顯示子系統(tǒng)和無縫組合多個應用程序的二維和三維圖形層 ? LibWebCore—— 新式的 Web 瀏覽器引擎 ,驅動 Android 瀏覽器和內嵌的 web 視圖 ? SGL—— 基本的 2D 圖形引擎 ? 3D 庫 —— 基于 OpenGL ES APIs 的實現。庫使用硬件 3D 加速或包 含高度優(yōu)化的3D 軟件光柵 ? FreeType —— 位圖和矢量字體渲染 ? SQLite —— 所有應用程序都可以使用的強大而輕量級的關系數據庫引擎 Application Framework 通過提供開放的開發(fā)平臺, Android 使開發(fā)者能夠編制極其豐富和新穎的應用程序。開發(fā)者可以自由地利用設備硬件優(yōu)勢、訪問位置信息、運行后臺服務、設置鬧鐘、向狀態(tài)欄添加通知等等,很多很多。 開發(fā)者可以完全使用核心應用程序所使用的框架 APIs。應用程序的體系結構旨在簡化組件的重用,任何應用程序都能發(fā)布他的功能且任何其他應用程序可以使用這些功能(需要服從框架執(zhí)行的安全限制)。這一機制允許用戶替換組件。 所有的應用程序其實是一組服務和系統(tǒng),包括: ? 視圖( View) —— 豐富的、可擴展的視圖集合,可用于構建一個應用程序。包括包括列表、網格、文本框、按鈕,甚至是內嵌的網頁瀏覽器 ? 內容提供者( Content Providers) —— 使應用程序能訪問其他應用程序(如通訊錄)的數據,或共享自己的數據 ? 資源管理器( Resource Manager) —— 提供訪問非 代碼資源,如本地化字符串、圖形和布局文件 ? 通知管理器( Notification Manager) —— 使所有的應用程序能夠在狀態(tài)欄顯示自定義警告 湖北大學本科課程設計(論文) 5 ? 活動管理器( Activity Manager) —— 管理應用程序生命周期 ,提供通用的導航回退功能 Applications Android 裝配一個核心應用程序集合,包括電子郵件客戶端、 SMS 程序、日歷、地圖、瀏覽器、聯系人和其他設置。所有應用程序都是用 Java 編程語言寫的。更加豐富的應用程序有待我們去開發(fā)! 3. Android 應用開發(fā)技術 課程 知識 點 總結 Android Audio 框架 media 庫中的 Audio 框架部分 Android 的 Audio 系統(tǒng)的核心框架在 media 庫中提供,對上面主要實現 AudioSystem、 AudioTrack和 AudioRecorder 三個類。 提供了 IAudioFlinger 類接口,在這個類中,可以獲得 IAudioTrack 和 IAudioRecorder 兩個接口,分別用于聲音的播放和錄制。 AudioTrack 和 AudioRecorder 分別通過調用 IAudioTrack 和IAudioRecorder 來實現。 Audio 系 統(tǒng)的頭文件在 frameworks/base/include/media/目錄中,主要的頭文件如下: : media 庫的 Audio 部分對上層的總管接口; :需要下層實現的總管接口; :放音部分對上接口; :放音部分需要下層實現的接口; :錄音部分對上接口; :錄音部分需要下層實現的接口。 、 和 這三個接口通過下層的繼承來實現(即AudioFlinger)。 、 和 是對上層提供的接口,它們既供本地程序調用(例如聲音的播放器、錄制器等),也可以通過 JNI 向 Java 層提供接口。 meida 庫中 Audio 部分的結構如圖所示。 湖北大學本科課程設計(論文) 6 從功能上看, AudioSystem 負責的是 Audio 系統(tǒng)的綜合管理功能,而 AudioTrack 和 AudioRecorder分別負責音頻數據的輸出和輸入,即播放和錄制。 中主要定義了一些枚舉值和 set/get 等一系列接口,如下所示: class AudioSystem { public: enum stream_type { // Audio 流的類型 SYSTEM = 1, RING = 2, MUSIC = 3, ALARM = 4, NOTIFICATION = 5, BLUETOOTH_SCO = 6, ENFORCED_AUDIBLE = 7, NUM_STREAM_TYPES 湖北大學本科課程設計(論文) 7 }。 enum audio_output_type { // Audio數據輸出類型 // …… 省略部分內容 }。 enum audio_format { // Audio數據格式 FORMAT_DEFAULT = 0, PCM_16_BIT, PCM_8_BIT, INVALID_FORMAT }。 enum audio_mode { // Audio模式 // …… 省略部分內容 }。 enum audio_routes { // Audio 路徑類型 ROUTE_EARPIECE = (1 0), ROUTE_SPEAKER = (1 1), ROUTE_BLUETOOTH_SCO = (1 2), ROUTE_HEADSET = (1 3), ROUTE_BLUETOOTH_A2DP = (1 4), ROUTE_ALL = 1UL, }。 // …… 省略部分內容 static status_t setMasterVolume(float value)。 static status_t setMasterMute(bool mute)。 static status_t getMasterVolume(float* volume)。 static status_t getMasterMute(bool* mute)。 static status_t setStreamVolume(int stream, float value)。 static status_t setStreamMute(int stream, bool mute)。 static status_t getStreamVolume(int stream, float* volume)。 湖北大學本科課程設計(論文) 8 static status_t getStreamMute(int stream, bool* mute)。 static status_t setMode(int mode)。 static status_t getMode(int* mode)。 static status_t setRouting(int mode,uint32_t routes, uint32_t mask)。 static status_t getRouting(int mode, uint32_t* routes)。 // …… 省略部分內容 }。 在 Audio 系統(tǒng)的幾個枚舉值中, audio_routes 是由單獨的位來表示的,而不是由順序的枚舉值表示,因此這個值在使用過程中可以使用 或 的方式。例如,表示聲音可以既從耳機( EARPIECE)輸出,也從揚聲器( SPEAKER)輸出,這樣是否能實現,由下層提供支持。在這個類中, set/get 等接口控制的也是相關的內容,例如 Audio 聲音的大小、 Audio 的模式、路徑等。 AudioT
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1