欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

android多媒體框架,android audio 框架

Android開發(fā)中的finish()與onDestroy()方法都是用來結(jié)束activity的吧?兩個(gè)有什么區(qū)別?

Android開發(fā)中的finish()與onDestroy()方法都是用來結(jié)束activity的。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了鹿邑免費(fèi)建站歡迎大家使用!

1、不同點(diǎn)區(qū)別:

finish()方法用于結(jié)束一個(gè)Activity的生命周期。而onDestory()方法則是Activity的一個(gè)生命周期。

其作用是在一個(gè)Activity對(duì)象被銷毀之前,Android系統(tǒng)會(huì)調(diào)用該方法,用于釋放此Activity之前所占用的資源。finish會(huì)調(diào)用到onDestory方法。在onDestory里打印一句話,運(yùn)行一下程序,會(huì)發(fā)現(xiàn)finish方法會(huì)把那句話打印出來。

2、方法區(qū)別:

Activity.finish()方法:

在你的activity動(dòng)作完成的時(shí)候,或者Activity需要關(guān)閉的時(shí)候,調(diào)用此方法,當(dāng)你調(diào)用此方法的時(shí)候,系統(tǒng)只是將最上面的Activity移出了棧,并沒有及時(shí)的調(diào)用onDestory()方法,其占用的資源也沒有被及時(shí)釋放。因?yàn)橐瞥隽藯?,所以?dāng)你點(diǎn)擊手機(jī)上邊的“back” 按鍵的時(shí)候,也不會(huì)再找到這個(gè)Activity.

Acitvity.onDestory()方法:

系統(tǒng)銷毀了這個(gè)Activity的實(shí)例在內(nèi)存中占據(jù)的空間。在Activity的生命周期中,onDestory()方法是他聲明的最后一步,資源控件等就被回收了。當(dāng)重新進(jìn)入此Activity的時(shí)候,必須重新創(chuàng)建,執(zhí)行onCrate()方法。

擴(kuò)展資料

中介軟件

1、操作系統(tǒng)與應(yīng)用程序的溝通橋梁,應(yīng)用分為兩層:函數(shù)層(Library)和虛擬機(jī)(Virtual Machine)。 Bionic是 Android 改良libc的版本。Android 同時(shí)包含了Webkit,所謂的Webkit 就是Apple Safari 瀏覽器背后的引擎。Surface flinger 是就2D或3D的內(nèi)容顯示到屏幕上。Android使用工具鏈(Toolchain)為Google自制的Bionic Libc。

2、Android采用OpenCORE作為基礎(chǔ)多媒體框架。Open CORE可分7大塊:PVPlayer、PVAuthor、Codec、PacketVideo Multimedia Framework(PVMF)、Operating System Compatibility Library(OSCL)、Common、OpenMAX。

3、Android 使用skia 為核心圖形引擎,搭配OpenGL/ES。skia與Linux Cairo功能相當(dāng),但相較于Linux Cairo, skia 功能還只是雛形的。2005年Skia公司被Google收購,2007年初,Skia GL源碼被公開,Skia 也是Google Chrome 的圖形引擎。

4、Android的多媒體數(shù)據(jù)庫采用SQLite數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫又分為共用數(shù)據(jù)庫及私用數(shù)據(jù)庫。用戶可通過ContentResolver類(Column)取得共用數(shù)據(jù)庫。

5、Android的中間層多以Java 實(shí)現(xiàn),并且采用特殊的Dalvik 虛擬機(jī)(Dalvik Virtual Machine)。Dalvik虛擬機(jī)是一種“暫存器型態(tài)”(Register Based)的Java虛擬機(jī),變量皆存放于暫存器中,虛擬機(jī)的指令相對(duì)減少。

6、Dalvik虛擬機(jī)可以有多個(gè)實(shí)例(Instance), 每個(gè)Android應(yīng)用程序都用一個(gè)自屬的Dalvik虛擬機(jī)來運(yùn)行,讓系統(tǒng)在運(yùn)行程序時(shí)可達(dá)到優(yōu)化。Dalvik 虛擬機(jī)并非運(yùn)行Java字節(jié)碼(Bytecode),而是運(yùn)行一種稱為.dex格式的文件。

參考資料來源:百度百科-Android

android開發(fā)用的是什么語言???

android開發(fā)用的是Java語言。

Java也擁有自己強(qiáng)大的開源社區(qū),當(dāng)編寫時(shí)遇到問題就能通過這些社區(qū)找到答案。android開發(fā)的教程,書籍和課程,包括免費(fèi)和付費(fèi)的,這些教程可以讓先用java語言開始入門Android開發(fā)之路。

Android代碼,示例demo 和App都是用Java編寫的,使用Java的開發(fā)者更容易轉(zhuǎn)為Android開發(fā)者,這在一開始Android生態(tài)系統(tǒng)未能建立時(shí),尤為重要。

擴(kuò)展資料

Java語言很成熟

Java語言可以說是一個(gè)相當(dāng)成熟的計(jì)算機(jī)編程語種,性能很好,用的人也超級(jí)多,除了基礎(chǔ)類庫完善,各種高級(jí)的第三方組件更是不計(jì)其數(shù),更重要的是Java虛擬機(jī)規(guī)范是開放的,谷歌只要按照甲骨文的虛擬機(jī)規(guī)范很容易寫出一套虛擬機(jī)。

Java語言安全

由于Java語言經(jīng)常被使用在網(wǎng)絡(luò)環(huán)境中,為了增加其程序的安全性,Java語言提了一個(gè)防止惡意代碼攻擊的安全機(jī)制,另外Java的強(qiáng)類型機(jī)制、垃圾回收器、異常處理和安全檢查機(jī)制,也使得用Java語言編寫的程序具有很好的健壯性。

參考資料來源:百度百科—Java 編程語言

參考資料來源:百度百科—android開發(fā)

Android有多強(qiáng)大??

Android 用甜點(diǎn)作為它們系統(tǒng)版本的代號(hào)的命名方法開始于 Andoird 1.5 發(fā)布的時(shí)候。作為每個(gè)版本代表的甜點(diǎn)的尺寸越變?cè)酱?,然后按?6個(gè)字母數(shù)序:紙杯蛋糕,甜甜圈,松餅,凍酸奶,姜餅,蜂巢。

Android 1.1

發(fā)布時(shí)間:發(fā)布于 2008 年9月

Android 1.5

Cupcake紙杯蛋糕 發(fā)布時(shí)間:發(fā)布于 2009 年 4 月

Android 1.6

Donut甜甜圈 發(fā)布時(shí)間:2009 年 9 月

Android 2.0

Eclair松餅 發(fā)布時(shí)間:2009 年 10 月 26 日

Android 2.1

Eclair松餅 發(fā)布時(shí)間: 2009 年 10 月 26 日 Android 2.1主要特性:提升硬件速度 更多屏幕以及分辨率選擇 大幅度的用戶界面改良支持 Exchange活動(dòng)墻紙 大幅改進(jìn)虛擬鍵盤 藍(lán)牙 2.1 Google 地圖

Android 2.2

Froyo凍酸奶 谷歌于北京時(shí)間2010年5月20日晚上10:30點(diǎn)在舊金山Moscone會(huì)展中心舉辦Google I/O 2010大會(huì)第二天的會(huì)議,Google正式發(fā)布了代號(hào)是“froyo 凍酸奶”的Android操作系統(tǒng)2.2版。 相對(duì)于上一版本的 改變: 1、整體性能大幅度的提升 2、3G網(wǎng)絡(luò)共享功能。 3、Flash的支持。 4、App2sd功能。 5、全新的軟件商店。 6、更多的Web應(yīng)用API接口的開發(fā)。

Android 2.2 For x86

在幾位華人軟件工程師的努力下,中國的用戶已經(jīng)可以享受到真正在上網(wǎng)本上可以安裝使用的Android了,這就是孫翊、黃志偉和Corentin Chary和其他幾位活躍的開發(fā)人員正在參與的Android-x86開源項(xiàng)目。此外,還有其他的開發(fā)人員如Kelly2.Blue、Wu Hai Gang、Swand ke 和 Wallace1 wang,他們都是來自中國大陸和臺(tái)灣的華人軟件工程師。 在孫翊發(fā)來的最新版本更新說明中,明確表示:他們已經(jīng)解決了眾多的技術(shù)難題,包括中文拼音輸入法的bug修訂,藍(lán)牙支持,無線網(wǎng)卡支持、SSL的bug修訂等,甚至已經(jīng)可以直接安裝到上網(wǎng)本上,從硬盤啟動(dòng)。

Android2.3

Gingerbread姜餅 北京時(shí)間2010年12月7日凌晨,Google正式對(duì)外發(fā)布了他們的下一代智能手機(jī)操作系統(tǒng)Android 2.3也就被大家所熟知的Android Gingerbread系統(tǒng)。 主要更新包括: 游戲:增加了新的垃圾回收和優(yōu)化處理事件,以提高對(duì)游戲的支持能力。原生代碼可直接存取輸入和感應(yīng)器事件、EGL/OpenGL ES、OpenSL ES。新的管理窗口和生命周期的框架。 多媒體:支持VP8和WebM視頻格式,提供AAC和AMR寬頻編碼,提供了新的音頻效果器,比如混響、均衡、虛擬耳機(jī)和低頻提升 通訊方式:支持前置攝像頭、SIP/VOIP和NFC(近場通訊) 站在用戶的角度看,這次更新的亮點(diǎn)主要有: 簡化界面、速度提升: 更快更直觀的文字輸入: 一鍵文字選擇和復(fù)制/粘帖: 改進(jìn)的電源管理系統(tǒng): 新的應(yīng)用管理方式: 原生支持前置攝像頭、互聯(lián)網(wǎng)通話和NFC(近場通訊): 系統(tǒng)原生支持VoIP,可以在聯(lián)系人里加入它的SIP帳戶,然后直接通過系統(tǒng)來撥打VoIP電話。 增加下載管理器:

Android 2.4

Ice cream sandwich冰激凌三明治  預(yù)計(jì)在2011年第四季度發(fā)布。其甜品代號(hào)為 Ice cream sandwich(冰激凌三明治) 目前已知的Android 2.4帶來的更新包括更多的動(dòng)畫特效、更快的運(yùn)行速度、軟件通話降噪、視頻聊天等。

Android N.n

有可靠的消息人士表示,繼“冰激凌三明治”之后,下一版Android系統(tǒng)的代號(hào)將為“Jelly Bean”。

Android3.0

Honeycomb(蜂巢) 3.0系統(tǒng)特性 ·優(yōu)化針對(duì)平板 ·全新設(shè)計(jì)的UI增強(qiáng)網(wǎng)頁瀏覽功能 ·n-app purchases功能

Android3.1

Honeycomb 蜂巢(改進(jìn)3.0BUG) ·經(jīng)過優(yōu)化的Gmail電子郵箱; ·全面支持GoogleMaps Android 3.1Honeycomb(3.0改進(jìn)) 將Android手機(jī)系統(tǒng)跟平板系統(tǒng)再次合并,從而方便開發(fā)者。 任務(wù)管理器可以滾動(dòng),支持USB 輸入設(shè)備(鍵盤、鼠標(biāo)等)。 支持 Google TV.可以支持XBOX 360無線手柄 widget支持的變化,能更加容易的定制屏幕widget插件。

Android 3.2

Honeycomb(蜂巢) 2011年7月13日,谷歌公司放出了新版“蜂巢”Android 3.2的升級(jí)源碼,合作廠商摩托羅拉亦在當(dāng)日發(fā)布了針對(duì)旗下XOOM平板電腦的升級(jí)固件,為用戶更新新版系統(tǒng)。 Android 3.2這一新版平板電腦操作系統(tǒng)開始支持7英寸設(shè)備,并引入了應(yīng)用顯示縮放功能,可以讓那些針對(duì)手機(jī)開發(fā)的應(yīng)用,更平滑的顯示在平板電腦上。

編輯本段系統(tǒng)優(yōu)勢

開放性 在優(yōu)勢方面,Android平臺(tái)首先就是其開放性,開放的平臺(tái)允許任何移動(dòng)終端廠商加入到Android聯(lián)盟中來。顯著的開放性可以使其擁有更多的開發(fā)者,隨著用戶和應(yīng)用的日益豐富,一個(gè)嶄新的平臺(tái)也將很快走向成熟。 掙脫束縛 在過去很長的一段時(shí)間,特別是在歐美地區(qū),手機(jī)應(yīng)用往往受到運(yùn)營商制約,使用什么功能接入什么網(wǎng)絡(luò),幾乎都受到運(yùn)營商的控制。自從iPhone上市,用戶可以更加方便地連接網(wǎng)絡(luò),運(yùn)營商的制約減少。隨著EDGE、HSDPA這些2G至3G移動(dòng)網(wǎng)絡(luò)的逐步過渡和提升,手機(jī)隨意接入網(wǎng)絡(luò)已不是運(yùn)營商口中的笑談。 豐富的硬件 這一點(diǎn)還是與Android平臺(tái)的開放性相關(guān),由于Android的開放性,眾多的廠商會(huì)推出千奇百怪,功能特色各具的多種產(chǎn)品。 開發(fā)商 Android平臺(tái)提供給第三方開發(fā)商一個(gè)十分寬泛、自由的環(huán)境。因此不會(huì)受到各種條條框框的阻撓,可想而知,會(huì)有多少新穎別致的軟件會(huì)誕生。但也有其兩面性,血腥、暴力、情色方面的程序和游戲如何控制正是留給Android難題之一。 Google應(yīng)用 從搜索巨人到全面的互聯(lián)網(wǎng)滲透,Google服務(wù)如地圖、郵件、搜索等已經(jīng)成為連接用戶和互聯(lián)網(wǎng)的重要紐帶,而Android平臺(tái)手機(jī)將無縫結(jié)合這些優(yōu)秀的Google服務(wù)。

編輯本段系統(tǒng)缺陷

一、Android系統(tǒng)手機(jī)泄密 二、撥號(hào)后自動(dòng)掛斷電話 通話BUG頻繁出現(xiàn)  三、對(duì)硬件配置要求高 制造成本增加  四、系統(tǒng)費(fèi)電嚴(yán)重 安卓手機(jī)續(xù)航不足  五、系統(tǒng)計(jì)算器計(jì)算有偏差  例如在Android系統(tǒng)自帶的計(jì)算器內(nèi)輸入14.52-14.49,正確結(jié)果應(yīng)該是0.03,但是計(jì)算器結(jié)果顯示的數(shù)字為0.0299999。

編輯本段研發(fā)聯(lián)盟

開放手機(jī)聯(lián)盟

為了推廣Android,Google和幾十個(gè)手機(jī)相關(guān)企業(yè)建立了開放手機(jī)聯(lián)盟(Open Handset Alliance)。 聯(lián)盟成員包括摩托羅拉(Motorola)、HTC、SAMSUNG、LG、Intel、NVIDIA、SiRF、Skype、KUPA Map 、MTK 以及中國移動(dòng)在內(nèi)的34家技術(shù)和無線應(yīng)用的領(lǐng)軍企業(yè)。這34家企業(yè)中并不包含把持Symbian的Nokia公司,以及憑借著iPhone風(fēng)光正在的Apple公司,微軟沒有加入,加拿大RIM和它的Blackberry也被擋在門外。 手機(jī)開放聯(lián)盟大家庭成員名單: 終端制造商 Motorola(摩托羅拉)- 美國(美國最大的手機(jī)制造商,著名老牌IT公司) Sony Ericsson(索尼愛立信)- 英國(索尼和愛立信的合資公司) HTC(宏達(dá)國際電子股份有限公司)-中國臺(tái)灣 Samsung Electronics(三星電子)- 韓國 LG Electronics(LG電子)- 韓國 Lumigon (丹麥陸力更手機(jī)公司)- 丹麥 ARCHOS(愛可視)- 法國 TOSHIBA(東芝)- 日本 安卓

SHARP(夏普)-日本 Fujitsu(富士通)-日本 NEC(日本電気株式會(huì)社)-日本 魅族 - 中國 小米--中國 移動(dòng)運(yùn)營商 China Telecom(中國電信)- 中國 China Mobile(中國移動(dòng))- 中國 China Unicom(中國聯(lián)通)- 中國 SK Telecom - 韓國 KT - 韓國 LG U - 韓國 KDDI by AU - 日本 Softbank -日本 NTT DoCoMo(日本電信電話公司)- 日本 Sprint Nextel(美國斯普林特Nextel公司)- 美國 Telecom Italia(意大利電信)- 意大利 Telefónica - 西班牙 T-Mobile - 德國 半導(dǎo)體公司 ARM- 英國 Texas Instruments(德州儀器)- 美國 Qualcomm(高通)- 美國 NVIDIA(英偉達(dá))- 美國 MediaTek(聯(lián)發(fā)科)- 中國臺(tái)灣 ST(意法半導(dǎo)體)- 歐洲 Infineon(英飛凌科技)- 德國 ST-Ericsson(ST愛立信)- 歐洲 Audience (聽眾)- 美國 Broadcom (博通)- 美國 Intel(英特爾)- 美國 Marvell (俊茂微電子)- 美國 SiRF(瑟夫)- 美國 Synaptics(新思)- 美國 HP(惠普)- 美國 軟件公司  Aplix - 日本 Ascender - 美國 Skype(微軟)- 美國 Esmertec(微迅)- 瑞士 Living Image - 美國 NMS Communications - 加拿大 Noser Engineering AG - 德國 Nuance Communication - 美國 PacketVideo - 美國 SkyPop - 美國 Sonix Network - 美國 The Astonishing Tribe - 瑞典 Wind River Systems(風(fēng)河)- 美國

編輯本段使用品牌

大事記

2008年9月22日,美國運(yùn)營商德國T-Mobile在紐約正式發(fā)布第一款A(yù)ndroid手機(jī)——T-Mobile G1。該款手機(jī)為臺(tái)灣宏達(dá)電子(HTC)代工制造,是世界上第一部使用Android操作系統(tǒng)的手機(jī),支持WCDMA/HSPA網(wǎng)絡(luò),理論下載速率7.2Mbps,并支持Wi-Fi。 2009年10月28日正式發(fā)布了Android 2.0 智能手機(jī)操作系統(tǒng)。 2010年1月索尼愛立信首款A(yù)ndroid機(jī)型X10上市 。 2010年1月7日,Google在其美國總部正式向外界發(fā)布了旗下首款合作品牌手機(jī)Nexus One(HTC G5),并同時(shí)開始對(duì)外發(fā)售。 2010年7月9日,美國NDP集團(tuán)調(diào)查顯示,Android系統(tǒng)已占據(jù)了美國移動(dòng)系統(tǒng)市場28%的份額。 北京時(shí)間2011年3月25日,據(jù)國外媒體報(bào)道,谷歌周四表示,谷歌暫停開源Android3.0,并將暫時(shí)阻止小型手機(jī)生產(chǎn)商使用其Android 3.0“Honeycomb”系統(tǒng),期限未定。 谷歌一位發(fā)言人通過電子郵件聲明稱,Honeycomb是專為平板電腦而非手機(jī)設(shè)計(jì)的,在該系統(tǒng)以開源形式發(fā)布前,還有很多工作要做。谷歌向《商業(yè)周刊》表示,推遲發(fā)布可能達(dá)數(shù)月之久。

國內(nèi)品牌

HTC 安卓手機(jī)(5張)魅族 魅族M9為一款多點(diǎn)觸摸手機(jī),于2010年12月16日發(fā)布,2011年1月1日正式上市。 J.wong在論壇發(fā)帖確定魅族M9將不能刷原生的Android系統(tǒng),M9將不是簡簡單單的在Android系統(tǒng)上加個(gè)UI,而是深層定制安卓系統(tǒng),現(xiàn)有的Android軟件的兼容性也絕對(duì)不是問題。J.wong甚至表態(tài)想刷Android系統(tǒng)的安卓控們請(qǐng)遠(yuǎn)離M9。J.wong表示魅族M9的系統(tǒng)雖然內(nèi)核采用Android內(nèi)核,但從UI和用戶體驗(yàn)方面完全看不出任何安卓的影子,使用Android內(nèi)核只是為了能兼容數(shù)以十萬計(jì)的安卓軟件,增強(qiáng)魅族M9的軟件擴(kuò)展性,讓M8之前一直被詬病的軟件數(shù)量成為歷史。 天語 天語W700是K-Touch天語手機(jī)在2011年初推出的一款WCDMA制式3G Android智能手機(jī),同時(shí),它還是第一款國產(chǎn)雙核手機(jī)。這款采用了NVIDIA TEGRA2平臺(tái)的高端智能手機(jī)首次發(fā)布在位于拉斯維加斯的CES2011展會(huì)上亮相。 天語W700采用基于ARM Cortex-A9 Dual Core的Tegra2 AP20H處理器,主頻為1GHz,具有高性能低功耗的特點(diǎn),它集成了高清視頻處理器、圖像處理器、音頻處理器等眾多模塊的高度整合處理器。 聯(lián)想 OMS和T-mobile G1搭載的Android(以最初上市版本為主)的不同之處就是可以使用戶自行關(guān)閉正在運(yùn)行的程序而不是由系統(tǒng)控制:按住屏幕上方向下拖動(dòng)即可看到任務(wù)管理器。 HKC Pearl 做為目前在市面上唯一正式銷售的Windows和Android系統(tǒng)雙系統(tǒng)手機(jī),這款HKC Pearl 珍珠珠配備了QVGA屏幕,內(nèi)存采用了128MB/256MB的標(biāo)準(zhǔn)配置,主處理器采用PXA 310處理器,624Mhz的主頻性能非常強(qiáng)勁,而且機(jī)器還配備了Wi-Fi,藍(lán)牙2.0無線傳輸設(shè)置。 華為 華為U8230在外觀上有別于其他Android手機(jī)的塑料風(fēng)格,通體的銀灰色和正面功能鍵盤的發(fā)絲紋路都洋溢著商務(wù)機(jī)型的味道。而作為功能上的特色,U8230擁有一塊3.5英寸的大屏幕、高達(dá)1500毫安時(shí)的鋰電池和一枚320萬象素?cái)z像頭采用Android平臺(tái)1.5版本。 中興 中興最近也大力發(fā)展android手機(jī),推出了v880。 海爾 海爾的產(chǎn)品也青睞搭載android系統(tǒng)。海爾于09年上市的H7采用直板全觸屏設(shè)計(jì),操作系統(tǒng)上正是采用了最新的Google Android2.0操作系統(tǒng)。 海爾于2011年7月亮相青島國際消費(fèi)電子博覽會(huì)的haipad,搭載創(chuàng)新工場家族“點(diǎn)心os”首款為PAD定制的“點(diǎn)心—互聯(lián)網(wǎng)智能手持終端解決方案”。 華禹 xPhone是由上海禹華通信技術(shù)有限公司設(shè)計(jì)的,采用類iphone的觸控設(shè)計(jì),配置了3寸WQVGA分辨率的觸摸屏,內(nèi)建300W像素的攝像頭,搭載Android平臺(tái),采用主頻 624Mhz的Marvell PXA-310處理器,擁有128MB SDRAM+256MB ROM的內(nèi)存配置,支持最大16GB的存儲(chǔ)卡擴(kuò)展,給出的參數(shù)中還加入了WiFi功能。 琦基 去年11月27日,琦基發(fā)布了全球首款Google Android/Windows Mobile雙操作系統(tǒng)的智能手機(jī)琦基i6,采用Google Android操作系統(tǒng)的叫做琦基i6 goal,采用Windows Mobile操作系統(tǒng)的叫做琦基i6 Win。 藍(lán)魔 藍(lán)魔的V系列MP4以及平板電腦采用安卓系統(tǒng)。 酷派 推出D539等多款搭載Android平臺(tái)的3G商務(wù)機(jī)型 小米 小米手機(jī)是小米公司(全稱北京小米科技有限責(zé)任公司)研發(fā)的一款高性能發(fā)燒級(jí)智能手機(jī)。手機(jī)預(yù)計(jì)2011年8月發(fā)布,售價(jià)1999元,主要針對(duì)手機(jī)發(fā)燒友,采用線上銷售模式。小米手機(jī)使用了高通Snapdragon S3 MSM8260手機(jī)處理器,也是世界上首款雙核1.5GHz的智能手機(jī)。

國外品牌

三星、LG、摩托羅拉、夏普、索尼愛立信

編輯本段系統(tǒng)架構(gòu)

應(yīng)用程序

Android以Java為編程語言,從接口到功能,都有層出不窮的變化,其中Activity等同于J2ME的MIDlet,一個(gè) Activity 類(class)負(fù)責(zé)創(chuàng)建視窗(window),一個(gè)活動(dòng)中的Activity就是在 foreground(前景)模式,背景運(yùn)行的程序叫做Service。兩者之間通過由ServiceConnection和AIDL連結(jié),達(dá)到復(fù)數(shù)程序同時(shí)運(yùn)行的效果。如果運(yùn)行中的 Activity 全部畫面被其他 Activity 取代時(shí),該 Activity 便被停止(stopped),甚至被系統(tǒng)清除(kill)。 View等同于J2ME的Displayable,程序人員可以通過 View 類與“XML layout”檔將UI放置在視窗上,Android 1.5的版本可以利用 View 打造出所謂的 Widgets,其實(shí)Widget只是View的一種,所以可以使用xml來設(shè)計(jì)layout,HTC的Android Hero手機(jī)即含有大量的widget。至于ViewGroup 是各種layout 的基礎(chǔ)抽象類(abstract class),ViewGroup之內(nèi)還可以有ViewGroup。View的構(gòu)造函數(shù)不需要再Activity中調(diào)用,但是Displayable的是必須的,在Activity 中,要通過findViewById()來從XML 中取得View,Android的View類的顯示很大程度上是從XML中讀取的。View 與事件(event)息息相關(guān),兩者之間通過Listener 結(jié)合在一起,每一個(gè)View都可以注冊(cè)一個(gè)event listener,例如:當(dāng)View要處理用戶觸碰(touch)的事件時(shí),就要向Android框架注冊(cè)View.OnClickListener。另外還有Image等同于J2ME的BitMap。

中介軟件

操作系統(tǒng)與應(yīng)用程序的溝通橋梁,應(yīng)用分為兩層:函數(shù)層(Library)和虛擬機(jī)(Virtual Machine)。 Bionic是 Android 改良libc的版本。Android 同時(shí)包含了Webkit,所謂的Webkit 就是Apple Safari 瀏覽器背后的引擎。Surface flinger 是就2D或3D的內(nèi)容顯示到屏幕上。Android使用工具鏈(Toolchain)為Google自制的Bionic Libc。 Android采用OpenCORE作為基礎(chǔ)多媒體框架。OpenCORE可分7大塊:PVPlayer、PVAuthor、Codec、PacketVideo Multimedia Framework(PVMF)、Operating System Compatibility Library(OSCL)、Common、OpenMAX。 Android 使用skia 為核心圖形引擎,搭配OpenGL/ES。skia與Linux Cairo功能相當(dāng),但相較于Linux Cairo, skia 功能還只是雛形的。2005年Skia公司被Google收購,2007年初,Skia GL源碼被公開,目前Skia 也是Google Chrome 的圖形引擎。 Android的多媒體數(shù)據(jù)庫采用SQLite數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫又分為共用數(shù)據(jù)庫及私用數(shù)據(jù)庫。用戶可通過ContentResolver類(Column)取得共用數(shù)據(jù)庫。 Android的中間層多以Java 實(shí)現(xiàn),并且采用特殊的Dalvik 虛擬機(jī)(Dalvik Virtual Machine)。Dalvik虛擬機(jī)是一種“暫存器型態(tài)”(Register Based)的Java虛擬機(jī),變量皆存放于暫存器中,虛擬機(jī)的指令相對(duì)減少。 Dalvik虛擬機(jī)可以有多個(gè)實(shí)例(instance), 每個(gè)Android應(yīng)用程序都用一個(gè)自屬的Dalvik虛擬機(jī)來運(yùn)行,讓系統(tǒng)在運(yùn)行程序時(shí)可達(dá)到優(yōu)化。Dalvik 虛擬機(jī)并非運(yùn)行Java字節(jié)碼(Bytecode),而是運(yùn)行一種稱為.dex格式的文件。

硬件抽像層

Android 的 HAL(硬件抽像層)是能以封閉源碼形式提供硬件驅(qū)動(dòng)模塊。HAL 的目的是為了把 Android framework 與 Linux kernel 隔開,讓 Android 不至過度依賴 Linux kernel,以達(dá)成 kernel independent 的概念,也讓 Android framework 的開發(fā)能在不考量驅(qū)動(dòng)程序?qū)崿F(xiàn)的前提下進(jìn)行發(fā)展。 HAL stub 是一種代理人(proxy)的概念,stub 是以 *.so 檔的形式存在。Stub 向 HAL“提供”操作函數(shù)(operations),并由 Android runtime 向 HAL 取得 stub 的 operations,再 callback 這些操作函數(shù)。HAL 里包含了許多的 stub(代理人)。Runtime 只要說明“類型”,即 module ID,就可以取得操作函數(shù)。

編程語言

Android 是運(yùn)行于 Linux kernel之上,但并不是GNU/Linux。因?yàn)樵谝话鉍NU/Linux 里支持的功能,Android 大都沒有支持,包括Cairo、X11、Alsa、FFmpeg、GTK、Pango及Glibc等都被移除掉了。Android又以bionic 取代Glibc、以Skia 取代Cairo、再以opencore 取代FFmpeg 等等。Android 為了達(dá)到商業(yè)應(yīng)用,必須移除被GNU GPL授權(quán)證所約束的部份,例如Android將驅(qū)動(dòng)程序移到 userspace,使得Linux driver 與 Linux kernel徹底分開。bionic/libc/kernel/ 并非標(biāo)準(zhǔn)的kernel header files。Android 的 kernel header 是利用工具由 Linux kernel header 所產(chǎn)生的,這樣做是為了保留常數(shù)、數(shù)據(jù)結(jié)構(gòu)與宏。 目前Android 的 Linux kernel控制包括安全(Security),存儲(chǔ)器管理(Memory Management),程序管理(Process Management),網(wǎng)絡(luò)堆棧(Network Stack),驅(qū)動(dòng)程序模型(Driver Model)等。下載Android源碼之前,先要安裝其構(gòu)建工具 Repo來初始化源碼。Repo 是 Android 用來輔助Git工作的一個(gè)工具。

安全與權(quán)限

Android本身是一個(gè)權(quán)限分立的操作系統(tǒng)。在這類操作系統(tǒng)中,每個(gè)應(yīng)用都以唯一的一個(gè)系統(tǒng)識(shí)別身份運(yùn)行(Linux用戶ID與群組ID)。系統(tǒng)的各部分也分別使用各自獨(dú)立的識(shí)別方式。Linux就是這樣將應(yīng)用與應(yīng)用,應(yīng)用與系統(tǒng)隔離開。 系統(tǒng)更多的安全功能通過權(quán)限機(jī)制提供。權(quán)限可以限制某個(gè)特定進(jìn)程的特定操作,也可以限制每個(gè)URI權(quán)限對(duì)特定數(shù)據(jù)段的訪問。 Android安全架構(gòu)的核心設(shè)計(jì)思想是,在默認(rèn)設(shè)置下,所有應(yīng)用都沒有權(quán)限對(duì)其他應(yīng)用、系統(tǒng)或用戶進(jìn)行較大影響的操作。這其中包括讀寫用戶隱私數(shù)據(jù)(聯(lián)系人或電子郵件),讀寫其他應(yīng)用文件,訪問網(wǎng)絡(luò)或阻止設(shè)備待機(jī)等。 安裝應(yīng)用時(shí),在檢查程序簽名提及的權(quán)限,且經(jīng)過用戶確認(rèn)后,軟件包安裝器會(huì)給予應(yīng)用權(quán)限。從用戶角度看,一款A(yù)ndroid應(yīng)用通常會(huì)要求如下的權(quán)限: 撥打電話、發(fā)送短信或彩信、修改/刪除SD卡上的內(nèi)容、讀取聯(lián)系人信息、讀取日程信息,寫入日程數(shù)據(jù)、讀取電話狀態(tài)或識(shí)別碼、精確的(基于GPS)地理位置、模糊的(基于網(wǎng)絡(luò)獲?。┑乩砦恢?、創(chuàng)建藍(lán)牙連接、對(duì)互聯(lián)網(wǎng)的完全訪問、查看網(wǎng)絡(luò)狀態(tài),查看WiFi狀態(tài)、避免手機(jī)待機(jī)、修改系統(tǒng)全局設(shè)置、讀取同步設(shè)定、開機(jī)自啟動(dòng)、重啟其他應(yīng)用、終止運(yùn)行中的應(yīng)用、設(shè)定偏好應(yīng)用、震動(dòng)控制、拍攝圖片等。 一款應(yīng)用應(yīng)該根據(jù)自身提供的功能,要求合理的權(quán)限。用戶也可以分析一款應(yīng)用所需權(quán)限,從而簡單判定這款應(yīng)用是否安全。如一款應(yīng)用是不帶廣告的單機(jī)版,也沒有任何附加內(nèi)容需要下載,那么它要求訪問網(wǎng)絡(luò)的權(quán)限就比較可疑。

android player是什么

Android的多媒體框架包括支持播放多種常見的媒體類型,可以輕松地把音頻、視頻和圖像集成到你的應(yīng)用??梢圆シ乓纛l或視頻媒體文件,這些文件是存儲(chǔ)在你的應(yīng)用程序的資源文件中的。應(yīng)用程序的資源文件可以是文件系統(tǒng)中獨(dú)立的文件,或通過網(wǎng)絡(luò)連接獲取的一個(gè)數(shù)據(jù)流,所有使用MediaPlayer APIS的資源文件,是谷歌自帶的播放器

萬能播放器Vitamio在android開發(fā)中怎么用

一、實(shí)現(xiàn)目標(biāo)

1.1支持格式

支持主流的視音頻格式:mp3/mp4/mkv/avi/3gp/rmvb/mov/flv等。

1.2支持功能

1.2.1當(dāng)然最重要的是播放功能,含播放控制(播放、暫停,聲音、亮度調(diào)整等)

1.2.2可以掃描SDcard,用列表展現(xiàn)出來,可以搜索

1.2.3可以播放網(wǎng)絡(luò)視音頻(http、rtsp、mms)

二、Vitamio項(xiàng)目簡介

Vitamio是一個(gè)支持所有Android設(shè)備的多媒體框架。Vitamio與Android默認(rèn)的MediaPlayer工作方式相似,但包含更加強(qiáng)大的功能?。ㄗ⒁猓篤itamio商業(yè)化后個(gè)人免費(fèi)、公司收費(fèi))

2.1網(wǎng)址

官方微博:

官方網(wǎng)址:

2.2成功案例

國內(nèi):VPlayer、熊貓影音、321影音等

國外:Tvltaliane、Dizi TV等

2.3 網(wǎng)絡(luò)協(xié)議

支持以下協(xié)議的音頻和視頻播放:

* MMS

* RTSP (RTP, SDP)

* HTTP流式傳輸(progressive streaming)

* HTTP Live Streaming (M3U8), Android 2.1+

2.4 媒體格式

Vitamio集成了許多音頻和視頻的解碼包,相比Android內(nèi)置默認(rèn)的媒體格式,這里列出其中的一些:

* divx/xvid

* wmv

* flv

* ts

* rmvb

* mkv

* mov

* m4v

* avi

* mp4

* 3gp

2.5 字幕

Vitamio支持顯示一些內(nèi)置或外掛字幕格式:

* SubRip(.srt)

* Sub Station Alpha(.ssa) / Advanced Sub Station移步wiki

* Alpha(.ass)

* SAMI(.smi/.sami)

* MicroDVD(.sub/.txt)

* SubViewer2.0(.sub)

* MPL2(.mpl/.txt)

* Matroska (.mkv) 字幕軌跡

2.6 其他功能

* 后臺(tái)播放

* 多音軌支持

* 多字幕支持,包括內(nèi)部或外掛的

* 多平臺(tái)處理器優(yōu)化

* 可調(diào)長寬比

* 文字編碼自動(dòng)檢測

2.7許可/授權(quán)(Lisences)

Vitamio使用了sevral開源項(xiàng)目,感謝他們。

2.7.1FFmpeg

FFmpeg提供軟件解碼器和多路輸出(demuxers)。Vitamio使用LGPLv2.1許可下FFmpeg的代碼,代碼可以從這里下載。

2.7.2Universalchardet (是Mozilla的一個(gè)自動(dòng)檢測頁面文字編碼的程序)

Universalchardet是Mozilla的編碼檢測庫。Vitamio使用MPL許可下Universalchardet的代碼來檢測字母文本編碼。

以上主要是對(duì)官方介紹進(jìn)行了簡單翻譯。

android的系統(tǒng)架構(gòu)

android系統(tǒng)架構(gòu)分從下往上為linux 內(nèi)核層、運(yùn)行庫、應(yīng)用程序框架層、和應(yīng)用程序?qū)?/p>

linuxkernel:負(fù)責(zé)硬件的驅(qū)動(dòng)程序、網(wǎng)絡(luò)、電源、系統(tǒng)安全以及內(nèi)存管理等功能。

libraries和 androidruntime:libraries:即c/c++函數(shù)庫部分,大多數(shù)都是開放源代碼的函數(shù)庫,例如webkit,該函數(shù)庫負(fù)責(zé) android網(wǎng)頁瀏覽器的運(yùn)行,例如標(biāo)準(zhǔn)的c函數(shù)庫libc、openssl、sqlite等,當(dāng)然也包括支持游戲開發(fā)2dsgl和 3dopengles,在多媒體方面有mediaframework框架來支持各種影音和圖形文件的播放與顯示,例如mpeg4、h.264、mp3、 aac、amr、jpg和png等眾多的多媒體文件格式。android的runtime負(fù)責(zé)解釋和執(zhí)行生成的dalvik格式的字節(jié)碼。

applicationframework(應(yīng)用軟件架構(gòu)),java應(yīng)用程序開發(fā)人員主要是使用該層封裝好的api進(jìn)行快速開發(fā)。

applications:該層是java的應(yīng)用程序?qū)?,android內(nèi)置的googlemaps、e-mail、即時(shí)通信工具、瀏覽器、mp3播放 器等處于該層,java開發(fā)人員開發(fā)的程序也處于該層,而且和內(nèi)置的應(yīng)用程序具有平等的位置,可以調(diào)用內(nèi)置的應(yīng)用程序,也可以替換內(nèi)置的應(yīng)用程序。

上面的四個(gè)層次,下層為上層服務(wù),上層需要下層的支持,調(diào)用下層的服務(wù),這種嚴(yán)格分層的方式帶來的極大的穩(wěn)定性、靈活性和可擴(kuò)展性,使得不同層的開發(fā)人員可以按照規(guī)范專心特定層的開發(fā)。

android應(yīng)用程序使用框架的api并在框架下運(yùn)行,這就帶來了程序開發(fā)的高度一致性,另一方面也告訴我們,要想寫出優(yōu)質(zhì)高效的程序就必須對(duì)整個(gè) applicationframework進(jìn)行非常深入的理解。精通applicationframework,你就可以真正的理解android的設(shè)計(jì) 和運(yùn)行機(jī)制,也就更能夠駕馭整個(gè)應(yīng)用層的開發(fā)。

當(dāng)前名稱:android多媒體框架,android audio 框架
文章出自:http://chinadenli.net/article18/dscchgp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、響應(yīng)式網(wǎng)站面包屑導(dǎo)航、軟件開發(fā)、品牌網(wǎng)站制作、手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名