999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Android平臺的應用程序開發研究

2013-10-17 06:09:04牟星亮單康康
網絡安全技術與應用 2013年10期
關鍵詞:程序系統

朱 生 牟星亮 單康康

(浙江大學 浙江 310027)

0 引言

Android操作系統最初由Andy Rubin開發,主要是支持智能手機,在2005年由Google收購,然后組建開放手機聯盟對其進行研發,慢慢的擴展到平板電腦和其他領域。Android一詞最早出現于法國作家利爾亞當在1886年發表的科幻小說《未來夏娃》中,他將外表像人的機器起名為Android,Android的Logo是由Ascender公司設計的一個全身綠色的機器人。

Android是一個開放、自由的移動終端平臺,底層是以Linux kernel為核心,包括操作系統、中間件、應用軟件。平臺開放性保證該平臺不存在任何阻礙移動產業創新的專用權障礙,在平臺上開發的應用程序,主要是應用java語言編寫,運行在Dalvik虛擬機上。

1 Android平臺的架構

android平臺由以下幾個部分組成:Linux kernel、Android運行時庫和一些其他的庫、應用框架和應用程序。

1.1 Linux內核

Android系統的Linux內核是作為硬件和軟件棧直接的抽象層。它是基于Linux kernel開發的,但這個系統并非是類GNU/Linux,它沒有采用Linux系統的虛擬內存文件系統,而是采用了YAFFS2文件系統(一種開源的文件系統,專為NAND Flash所設計,具有很好的移植性,能在多種系統上運行),多種內GNU/Linux所支持的功能,android Linux kernel都沒有給予支持。另外,還添加了一個名為Goldfish的虛擬CPU和Android運行所需的特定驅動代碼。目前,Linux kernel控制包括安全,存儲器管理,程序管理,網絡堆棧,驅動程序模型等。

1.2 運行時庫和其他庫

Android的運行時庫主要包含了一組核心庫和Dalvik虛擬機[3],另外還提供了大量的庫類支持,且大部分是開源代碼。在這些代碼中,提供了諸如對SQlite(android系統采用的嵌入式數據庫)、Webkit的支持。

Dalvik 可以同時運行多個虛擬系統,對沒一個Android應用程序,它都在自己的進程中運行,擁有一個獨立的Dalvik虛擬機實例。該虛擬機執行(.dex)文件,這種格式的文件對小內存使用做了優化。

1.3 應用框架

Android的應用框架的架構設計簡化了組件的重用。開發人員可以訪問核心應用程序所使用的所有API框架。任何一個應用程序都可以發布它的功能模塊,而且在框架的安全限制內,其他任何的應用程序也可以使用該功能模塊。

對于這一要求,即當某一部分功能塊被請求時,系統要能夠及時啟動一個應用程序的進程,并實例化其Java對象。所以,Android應用不像其他應用一樣,它并沒有如main()函數這樣的單一入口點。而是由系統提供的四種類型的組件來提供的。四種組件包括:

(1)Activity 在Android中,Activity是所有應用程序的根本,程序的運行流程都是在Activity中,它是Android中最基本的模塊之一。

(2)service Service是和Activity級別差不多的一種組件,但它不能自己運行,只能在后臺運行,和其他組件進行交互。

(3)Broadcast 在Android中,Broadcast是一種廣泛運用在各種應用程序之間進行信息傳輸的機制。

(4)Content Provider Content Provider是Android提供的第三方應用數據的訪問方案。它使一個應用程序的指定數據集提供給其他應用程序。

1.4 應用程序

Android會同一系列核心應用程序包一起發布,該應用程序包包括email客戶端,SMS短消息程序,日歷,地圖,瀏覽器,聯系人管理程序等。所有的應用程序都是使用JAVA語言編寫的。一個Android App包含一個稱為APK的壓縮文件中,如圖一所示,一個SDK APP的構成。

圖1中需要注意的是 Android manifest文件,它是一個介于App和Android System的接口。它在app中位于整個項目的根目錄,描述package中暴露的組件(各種activity、service等),以及他們各自的實現類,能被處理的各種數據和啟動位置,另外還指定了permissions和instrumentation。

2 Android應用開發例程

本文的開發實例是一個獲取wifi信息,并把掃描到的wifi信號寫入一個sdcard中的文件的程序。Android平臺提供了很多接口,供開發者使用,開發者通過這些接口可以方便的對移動終端上的各種設備進行讀寫等操作。

圖1 SDK APP構成

2.1 開發環境搭建

搭建android的開發環境,要依次安裝 JAVA 的JDK平臺,Eclipse開發平臺,SDK平臺,在eclipse中安裝ADT插件,之后,在eclipse中設置SDK路徑。開發環境搭建完成后,可以創建運行android軟件的虛擬機avd了,一種是通過eclipse中的Android SDK 安定 AVD Manager創建,一種是利用SDK提供的android 命令來創建。

通過eclipse創建AVD 過程如下:

1、在Eclipse中。選擇Windows > Android SDK and AVD Manager

2、點擊左側面板的Virtual Devices,再右側點擊New

3、填入Name,選擇Target的API,SD Card大小任意,Skin隨便選,Hardware目前保持默認值,點擊create avd 即可完成。

另外一種方法是在cmd中運用命令創建,在cmd命令行中輸入以下命令:

其中avd-name是創建的avd的名字,target后面是所使用的sdk的版本號。這個命令可以創建一個名為avd-name的avd。在在命令行中輸入命令:

通過這個命令在c盤目錄下創建了一個512m大小的名為sdcard的sdcard文件。然后通過下面這個命令,可以帶sdcard文件啟動avd。

啟動后,就可以把各種android dex文件安裝到該虛擬機中進行運行。

2.2 程序開發實例

Wi-fi是一種可以將一些移動終端以無線方式互聯的技術。在android的應用框架[10]中,提供了一些訪問操作wifi設備的包,包含在android.net.wifi下面,主要包含四個類:

ScanResult:通過移動終端的wifi設備掃描獲取到的周邊的wifi信號的信息。

wifiConfiguration:主要包含一些接入一個wifi接入點的時候,需要獲取到的一些信息。

wifiInfo:在接入wifi接入點后,通過這個類,可以獲得當前連接的一些信息。

wifiManager:這個類就是用來管理wifi設備的,獲得一定權限后,通過它可以對wifi設備進行各種操作。

在本文的這個開發實例中,將實現一個很小的程序,它首先對移動終端周邊的wifi接入點進行掃描,獲取這些接入點的信息,然后把這些信息寫入一個sdcard中的一個文本文件中,程序首先要獲取到操作wifi設備和sdcard設備的權限,android中的權限設置都是在AndroidMenifest.xml中定義的。權限設置如下:

因為開發使用的sdk是最新的版本,而目前很多移動終端的android系統還沒有更新,所以還要在這個文件中設置android:minSdkVersion,它表示可運行此程序的最低sdk的版本。

設定好這些之后,就可以開始程序的設計與開發了。這個程序中,需要一個用戶界面,包含一個啟動掃描的按鈕,和一個文本框,告知一個簡單的掃描結果給用戶。在Android中,UI的定義需要通過layout來進行,一般view可以直接在layout里面進行聲明。我們需要在Layout的main.xml中定義一個textview和兩個button。

圖2 UI設計

部分代碼如下:

然后根據這兩個文件,android會自動生成一個R.java的文件。里面用java代碼定義了這幾個UI組件及其屬性。

然后我們先來定義一個類,來封裝一些對wifi的操作。在這個類中,我們取得一個WifiManager對象,然后通過它掃描wifi接入點,得到周邊的wifi信號的信息。主要代碼如下:

然后創建一個繼承Activity的主類ScanActivity,這個主類將創建一個UI界面,使用在layout文件當中定義好的textview和button,然后獲取一個的封裝了wifi操作的類的對象,之后就可以掃描所需要的信息了,在寫入sdcard之前,需要檢查該設備的狀態,如果不可寫的話,就在內存里面創建一個文件進行寫入操作,一般在內存中,寫入的位置上/data/data/app下的項目文件夾里面。如圖3,是程序掃描的結果。

圖3 掃描結果

圖4 虛擬機界面

3 總結

Android平臺是一個高度開放和兼容的平臺,在這個平臺上進行開發不受任何限制,其應用框架提供了豐富的接口,還有很多成熟的功能塊可調用。另外Android系統還能無縫的結合Google的如地圖、郵件、搜索等服務。對于android的發展而言,良好的開放性,有利于積累人氣,包括軟件開發商和硬件提供商。對于廣大的消費,最大的受益是在這個平臺上越來越豐富的軟件資源。而由于其開放和兼容性,將帶來更大的競爭,促使android的快速向前發展。

[1]Rogers R,Meike B,Mednieks Z.Android應用開發[M].北京:人民郵電出版社,2010.

[2]Android Developers[EB/OL].http://developer.android.com.

[3]Reto Meier.Android 高級編程[M].北京:清華大學出版社,2010.

[4]開放手機聯盟.Android[DB/OL].http://code.google.com/android.

[5]Android實驗室.Android[DB/OL].http://androidlab.cn.

[6]Android開發網.Android[DB/OL].http://www.android123.com.cn.

[7]張燁. 基于Android平臺WIFI的實現及應用[D]. 北京郵電大學.2012

[8]朱婷婷,李惠. 基于Android的應用軟件的綜述[J].電腦與電信.2011.

[9]姚昱旻,劉衛國. Android的架構與應用開發研究[J].計算機系統應用.2008

[10 ]公磊,周聰. 基于Android的移動終端應用程序開發與研究[J].計算機與現代化2008

猜你喜歡
程序系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
半沸制皂系統(下)
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
主站蜘蛛池模板: 亚洲美女一级毛片| 亚洲AV无码久久精品色欲| 狠狠综合久久| 91麻豆国产视频| 日本91在线| 亚洲欧洲免费视频| 无遮挡一级毛片呦女视频| 69av在线| 欧美一级特黄aaaaaa在线看片| 91破解版在线亚洲| 真实国产精品vr专区| 亚洲一级毛片在线播放| 国产全黄a一级毛片| 欧美精品不卡| 红杏AV在线无码| 999国产精品永久免费视频精品久久 | 男女性色大片免费网站| 亚洲资源站av无码网址| 欧美一区二区啪啪| 亚洲黄网在线| 欧美成人怡春院在线激情| 国产在线一区视频| 国产交换配偶在线视频| 色综合日本| 国产另类视频| 日韩精品久久久久久久电影蜜臀| 精品国产一区91在线| 99re精彩视频| 激情在线网| 毛片网站观看| 亚洲经典在线中文字幕| 尤物在线观看乱码| 性欧美在线| 一级福利视频| 日日拍夜夜嗷嗷叫国产| 2020国产免费久久精品99| 中文字幕亚洲综久久2021| 国产精品黑色丝袜的老师| 又黄又湿又爽的视频| 久久性妇女精品免费| 欧美另类第一页| 国产原创第一页在线观看| 日韩 欧美 国产 精品 综合| 成人在线综合| 国产精品一区在线麻豆| 久久国产毛片| 免费国产小视频在线观看| 青青青国产精品国产精品美女| 99热国产在线精品99| 亚洲性视频网站| 日韩福利视频导航| 成人福利在线视频| 在线观看91香蕉国产免费| 最新国产精品鲁鲁免费视频| 99精品国产高清一区二区| 亚洲国产高清精品线久久| 国产成人精品免费av| 思思热精品在线8| 一级黄色网站在线免费看| 亚洲欧美激情小说另类| 日韩一区精品视频一区二区| 亚洲色图狠狠干| 伊人天堂网| 日韩av在线直播| 亚洲成人在线免费| 2020最新国产精品视频| 看国产毛片| 91原创视频在线| 久久精品亚洲中文字幕乱码| 老色鬼久久亚洲AV综合| 国产小视频在线高清播放| 黄色三级毛片网站| 亚洲黄色高清| 日本成人不卡视频| 国产菊爆视频在线观看| 国产一区二区丝袜高跟鞋| 女同国产精品一区二区| 亚洲精品无码久久毛片波多野吉| 最新国产在线| 性网站在线观看| 国产成人精品一区二区| 内射人妻无码色AV天堂|