色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Android嵌入式平臺(tái)傳感器應(yīng)用開(kāi)發(fā)水平儀

          基于Android嵌入式平臺(tái)傳感器應(yīng)用開(kāi)發(fā)水平儀

          作者: 時(shí)間:2012-04-16 來(lái)源:網(wǎng)絡(luò) 收藏

          摘要:詳細(xì)介紹了如何利用系統(tǒng)的開(kāi)發(fā)儀應(yīng)用的全過(guò)程。通過(guò)對(duì)該案例開(kāi)發(fā)的講解,介紹了應(yīng)用的開(kāi)發(fā)方法以及通過(guò)Eclipse開(kāi)發(fā)應(yīng)用程序的過(guò)程。

          本文引用地址:http://cafeforensic.com/article/149233.htm

          1簡(jiǎn)介

          互聯(lián)網(wǎng)巨頭Google公司于2007年11月5日推出了全新的軟件---Android,該由操作系統(tǒng)、中間件、用戶(hù)界面以及應(yīng)用軟件組成,是一個(gè)真正開(kāi)放的移動(dòng)平臺(tái)。

          2007年11月初,Google與其他33家手機(jī)廠商、軟硬件供應(yīng)商、手機(jī)芯片供應(yīng)商、移動(dòng)運(yùn)營(yíng)商聯(lián)合組成了開(kāi)放手機(jī)聯(lián)盟(OpenHandsetAlliance),發(fā)布了名為Android的手機(jī)軟件平臺(tái),并宣布該平臺(tái)完全開(kāi)放。同時(shí)Google希望Android平臺(tái)成為一套標(biāo)準(zhǔn)化、開(kāi)放式的移動(dòng)軟件平臺(tái)。

          由于Android系統(tǒng)具有開(kāi)發(fā)性、平等性、無(wú)界性以及方便性等優(yōu)點(diǎn),所以很快被業(yè)界所接受。從2008年初開(kāi)始,越來(lái)越多的開(kāi)發(fā)人員投身到Android應(yīng)用的開(kāi)發(fā)當(dāng)中。

          而Android系統(tǒng)的一大亮點(diǎn)之一就是的使用,利用傳感器可以開(kāi)發(fā)出很多新奇有趣的應(yīng)用程序。例如計(jì)步器、儀,甚至在很多游戲中都可以使用傳感器來(lái)操作游戲。傳感器的種類(lèi)有很多種,其中包括加速度傳感器、姿態(tài)傳感器、磁場(chǎng)傳感器、溫度傳感器以及光傳感器等,介紹的儀應(yīng)用就是使用姿態(tài)傳感器的。

          2案例功能

          將結(jié)合水平儀案例的開(kāi)發(fā)詳細(xì)介紹如何在Android平臺(tái)下開(kāi)發(fā)傳感器應(yīng)用,下面首先對(duì)水平儀的功能及界面進(jìn)行簡(jiǎn)單的介紹。

          2。1程序界面

          程序運(yùn)行后的效果如圖1所示,用戶(hù)可以通過(guò)調(diào)整手機(jī)的姿態(tài)來(lái)控制界面中各個(gè)氣泡的位置。與真正的水平儀一樣,在使用手機(jī)水平儀時(shí),需要將手機(jī)平放到某個(gè)平面上才可以。

          圖1 水平儀應(yīng)用程序界面

          圖1 水平儀應(yīng)用程序界面

          2。2軟件功能

          運(yùn)行該程序,當(dāng)改變手機(jī)的姿態(tài)時(shí),界面中的氣泡便會(huì)根據(jù)手機(jī)的姿態(tài)向高處進(jìn)行相應(yīng)的移動(dòng)。

          當(dāng)手機(jī)所處的平面水平時(shí),各個(gè)氣泡都應(yīng)該位于中間的指定區(qū)域。

          3開(kāi)發(fā)環(huán)境搭建

          正式進(jìn)入代碼開(kāi)發(fā)之前,首先需要對(duì)開(kāi)發(fā)環(huán)境進(jìn)行搭建,其搭建步驟如下所列。

          (1)安裝Java開(kāi)發(fā)環(huán)境JDK。

          (2)從網(wǎng)上下載Android開(kāi)發(fā)環(huán)境SDK的壓縮包,并將其解壓到磁盤(pán)上的某個(gè)位置。

          (3)將SDK解壓目錄中的tools目錄添加到系統(tǒng)的PATH環(huán)境變量中。

          (4)下載并安裝Eclipse集成開(kāi)發(fā)環(huán)境。

          (5)為Eclipse安裝Android開(kāi)發(fā)插件ADT,并在Eclipse的Preferences中配置Android插件的SDKLocation。

          (6)在Eclipse的AVDManager中創(chuàng)建Android虛擬設(shè)備(AVD),并啟動(dòng)模擬器。

          (7)下載并安裝用來(lái)調(diào)試Android傳感器應(yīng)用的Sensorsimulator傳感器模擬器軟件。

          (8)在模擬器中安裝Sensorsimulator所對(duì)應(yīng)的apk文件并對(duì)其進(jìn)行調(diào)試使Sensorsimulator應(yīng)用程序能夠與Android模擬器進(jìn)行通信。

          4開(kāi)發(fā)前的準(zhǔn)備

          前面完成了開(kāi)發(fā)環(huán)境的搭建,但在正式進(jìn)行代碼開(kāi)發(fā)之前,還需要再做一些開(kāi)發(fā)前的準(zhǔn)備工作,其步驟如下:

          (1)首先啟動(dòng)之前安裝好Eclipse。

          (2)然后依次點(diǎn)擊File|New|Other|Android|AndroidProject進(jìn)入項(xiàng)目的創(chuàng)建界面。

          (3)在項(xiàng)目創(chuàng)建界面中,輸入項(xiàng)目的名稱(chēng)、所使用的目標(biāo)平臺(tái)、所在的包名等信息,如圖2所示。

          圖2 在Eclipse 中創(chuàng)建Android 項(xiàng)目

          圖2 在Eclipse 中創(chuàng)建Android 項(xiàng)目

          (4)點(diǎn)擊Finish完成項(xiàng)目的創(chuàng)建。

          (5)在程序中將會(huì)用到的圖片資源存放到項(xiàng)目文件夾的res/drawable-mdpi目錄下,如圖3所示。

          圖3 圖片資源

          圖3 圖片資源

          (6)為應(yīng)用程序引入調(diào)試時(shí)使用的Sensorsimulator支持jar包,該jar包位于Sensorsimulator安裝目錄中的bin目錄下:

          5自定義View的開(kāi)發(fā)

          本案例需要自定義一個(gè)View來(lái)繪制水平儀的用戶(hù)界面,首先需要在項(xiàng)目文件夾的src/wyf/ytl目錄下創(chuàng)建一個(gè)名為Main-View的java類(lèi),并使其繼承自View類(lèi),其代碼框架如下:

          packagewyf。ytl;//聲明所在包

          importandroid。content。Context;//引入Context類(lèi)

          importandroid。graphics。Bitmap;//引入Bitmap類(lèi)

          importandroid。graphics。BitmapFactory;//引入相關(guān)類(lèi)

          importandroid。graphics。Canvas;//引入Canvas類(lèi)

          importandroid。graphics。Color;//引入Color類(lèi)

          importandroid。graphics。Paint;//引入Paint類(lèi)

          importandroid。graphics。RectF;//引入RectF類(lèi)

          importandroid。graphics。Paint。Style;//引入Style類(lèi)

          importandroid。util。AttributeSet;//引入AttributeSet類(lèi)

          importandroid。view。View;//引入View類(lèi)

          publicclassMainViewextendsView{

          Paintpaint=newPaint();//畫(huà)筆

          //圖片資源的聲明

          BitmapshangBitmap1;//上面的大矩形圖

          BitmapshangBitmap2;//上面的氣泡

          BitmapzuoBitmap1;//左面的大矩形圖

          BitmapzuoBitmap2;//左面圖的氣泡

          BitmapzhongBitmap1;//中間的大圓圖

          BitmapzhongBitmap2;//中間的小氣泡

          BitmapxiaBitmap1;//右下的矩形圖

          linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁(yè) 1 2 3 4 5 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉