中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Android的嵌入式Web服務(wù)器設(shè)計(jì)

        基于Android的嵌入式Web服務(wù)器設(shè)計(jì)

        作者: 時間:2016-10-10 來源:網(wǎng)絡(luò) 收藏

        摘要:隨著Internet技術(shù)的興起,在設(shè)備的管理與交互中,基于Web方式的應(yīng)用成為目前的主流。本文主要論述了基于系統(tǒng)環(huán)境,在家庭網(wǎng)關(guān)中實(shí)現(xiàn)的設(shè)計(jì)方法,介紹了i-jetty,及其Web應(yīng)用功能的實(shí)現(xiàn)。
        關(guān)鍵詞:;嵌入式;i-jetty;SQLite

        只要在嵌入式設(shè)備中集成了Web服務(wù)器,就能實(shí)現(xiàn)用戶與嵌入式設(shè)備低成本、高通用性的信息交流,即客戶端利用HTTP瀏覽器,在任何時間、任何地點(diǎn)都能實(shí)現(xiàn)與嵌入式設(shè)備的信息交互??梢哉f,嵌入式Web的應(yīng)用極大地促進(jìn)嵌入式設(shè)備,特別是家電設(shè)備、通信終端、儀器儀表的信息交互和遠(yuǎn)程控制功能。
        在三網(wǎng)融合的大背景下,通過家庭網(wǎng)關(guān)實(shí)現(xiàn)外部網(wǎng)絡(luò)即電視網(wǎng)、電信網(wǎng)、因特網(wǎng)與家庭內(nèi)部電話、電視、電腦以及家庭電器設(shè)備的通訊,是當(dāng)前家居智能化、現(xiàn)代化的重要發(fā)展趨勢。本文的主要內(nèi)容是研究基于家庭網(wǎng)關(guān)的嵌入式系統(tǒng),實(shí)現(xiàn)簡單實(shí)用的Web服務(wù)器功能,為外部網(wǎng)絡(luò)提供一個方便快捷地訪問和控制家庭內(nèi)部資源的平臺。由于操作系統(tǒng)能方便地將各種應(yīng)用程序嵌入網(wǎng)絡(luò),以及開放性好、支持硬件豐富的特點(diǎn),本文選擇Android操作系統(tǒng)作為家庭網(wǎng)關(guān)設(shè)計(jì)的軟件平臺來建立Web服務(wù)器。

        1 Android系統(tǒng)介紹
        Android移動設(shè)備平臺是基于Linux內(nèi)核再度開發(fā)的一個開源的操作系統(tǒng)和軟件平臺,最早期由Google公司進(jìn)行研究和開發(fā)的。后來Goog le為了推廣此技術(shù),它和中國移動、HTC、三星、摩托羅拉等幾十家手機(jī)通信運(yùn)營商和制造商,建立了開放手機(jī)聯(lián)盟,共同開發(fā)Android移動設(shè)備平臺。
        Android采用了軟件堆層的架構(gòu),主要分為三部分:其最底層是基于Linux內(nèi)核進(jìn)行再度開發(fā)的,Linux內(nèi)核只提供最為基礎(chǔ)的功能;中間層包括由C++開發(fā)的虛擬機(jī)Virtual Machine(VM)和函數(shù)庫Library;最上層是各種應(yīng)用軟件,包括通話程序、短信程序等。應(yīng)用軟件則由各公司自行開發(fā),以Java編寫。每個Android應(yīng)用程序都在VM的一個實(shí)例中運(yùn)行,這個實(shí)例駐留在一個由Linux內(nèi)核管理的進(jìn)程中。
        本文實(shí)現(xiàn)的Web應(yīng)用雖然基于Android操作系統(tǒng),但并不像通常的Android APP那樣,需要一個AndroidManifest.xml文件包含必要的配置信息,且需要一個Activity類來提供UI。因?yàn)槭荳eb服務(wù)不需要用戶圖形界面,只要用到Android提供的接口而已,即android.jar,這是一個Java歸檔文件,其中包含構(gòu)建應(yīng)用程序所需的所有的Android SDK類。而且,由于Android VM的原因,不能直接使用.class文件,需要轉(zhuǎn)換為.dex文件,這些內(nèi)容將在下文詳細(xì)介紹。

        2 系統(tǒng)設(shè)計(jì)
        在嵌入式系統(tǒng)中,主控制芯片的選擇對于整個系統(tǒng)性能和良好運(yùn)行有著至關(guān)重要的影響,在選擇主控芯片的過程中,需綜合考慮芯片自身的性能、兼容性、價(jià)格以及后續(xù)的升級等因素。綜合考慮以上因素,本文設(shè)計(jì)的家庭網(wǎng)關(guān)采用了Cortex—A8處理器作為硬件平臺。因?yàn)镃or tex—A8支持大型的操作系統(tǒng),高頻率、高級存儲管理及豐富的外設(shè)接口,為Android系統(tǒng)的運(yùn)行提供了良好的硬件基礎(chǔ)。
        一個Web服務(wù)器也被稱為HTTP服務(wù)器,它通過HTTP協(xié)議與客戶端通信。這個客戶端通常指的是Web瀏覽器。Web服務(wù)器監(jiān)聽瀏覽器的服務(wù)請求,根據(jù)用戶請求的類型提供相應(yīng)的服務(wù);Web服務(wù)器在接收到用戶端的請求后,處理用戶請求并返回需要的數(shù)據(jù)。這些數(shù)據(jù)通常以格式固定、含有文本和圖片的頁面出現(xiàn)在用戶端瀏覽器。本文Web服務(wù)器系統(tǒng)的設(shè)計(jì)架構(gòu)如圖1所示。

        本文引用地址:http://www.antipu.com.cn/article/201610/306035.htm

        a.JPG


        目前常用的嵌入式Web服務(wù)器主要有boa、thttpd、mini_httpd、shttpd和lighttpd等,但它們都不能直接應(yīng)用于Android系統(tǒng)上。本文選用代碼精煉、擴(kuò)展性強(qiáng)的開源i-jettyWeb服務(wù)器,它可直接運(yùn)行在Android系統(tǒng)上,為Servlet提供運(yùn)行環(huán)境鈍能。
        Servlet是一種獨(dú)立于平臺和協(xié)議的Web服務(wù)器端的Java應(yīng)用程序,可以生成動態(tài)的Web頁面。與傳統(tǒng)的從命令行啟動的Java應(yīng)用程序不同,Servlet由Web服務(wù)器進(jìn)行加載。
        一個Web服務(wù)器系統(tǒng)是離不開數(shù)據(jù)庫的支持。SQLite是一款輕型的數(shù)據(jù)庫,是遵守ACID的關(guān)聯(lián)式數(shù)據(jù)庫管理系統(tǒng),它是針對嵌入式產(chǎn)品而設(shè)計(jì)的,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。Android平臺集成了SQLite數(shù)據(jù)庫,并提供了操作的API。所以,只要在Servlet中引入開發(fā)Android程序提供的API,就能實(shí)現(xiàn)用Servlet操作SQLite。
        本文下面主要介紹i—ierry web嵌入式服務(wù)器的搭建,以及如何實(shí)現(xiàn)Servlet對SQIrite數(shù)據(jù)庫的操作。
        2.1 i-jetty Web服務(wù)器及其安裝
        i—jetty是一個將開源Web容器Jetty移植到GoogleAndroid手機(jī)平臺的開源項(xiàng)目,可以使嵌入式設(shè)備上運(yùn)行Web應(yīng)用。Jetty是一個100%由Java實(shí)現(xiàn)的、開源的HTYP服務(wù)器和javax.servlet容器,它不僅僅作為一個獨(dú)立服務(wù)軟件(如Tomcat)被使用,而且其優(yōu)良的組件(Compone t)設(shè)計(jì)、高內(nèi)聚低耦合、高擴(kuò)展性等特性使得Jetty非常易于作為嵌入式工具使用??傊琂etty具有的優(yōu)點(diǎn)包括:
        1)配置使用簡單;
        2)設(shè)計(jì)模塊化,代碼簡練易懂;
        3)Tomcat的應(yīng)用移植到Jetty基本不用修改;
        4)非常適合嵌入式產(chǎn)品,可擴(kuò)展性好;
        i—jetty是使用Java語言編寫的,它的API以一組JAR包的形式發(fā)布。開發(fā)人員可以j將Jetty容器實(shí)例化成一個對象,可以迅速為一些獨(dú)立運(yùn)行(stand—alone)的Java應(yīng)用提供網(wǎng)絡(luò)和web連接。使用簡單、配置簡單,體積很小,但它的功能齊全,并且還是一個Servlet容器,這就讓動態(tài)網(wǎng)頁實(shí)現(xiàn)和后臺操作(例如數(shù)據(jù)庫操作)成為可能。同時,i—jetty可以使用Android的接口,這就降低了開發(fā)的難度和復(fù)雜度。i—jetty與其他主流的服務(wù)器一樣,只要將已經(jīng)做好的Web項(xiàng)目發(fā)布到服務(wù)器的Webapps目錄下,就能實(shí)現(xiàn)網(wǎng)站的正常運(yùn)行,十分的方便。
        下面介紹i—jetty服務(wù)器的安裝:
        首先,在eclipse里創(chuàng)建i—jetty的android項(xiàng)目,將下載的i—jetty源碼覆蓋進(jìn)去。然后,將下面目錄下的jar引入到i—jetty項(xiàng)目中:C:\Documents and Settings\org\eclipse\jetty,還需要servlet-api-2.5.jar。最后,編譯i-jetty,并將其安裝到設(shè)備中。此后,即可對服務(wù)器進(jìn)行各種配置。若想要使用自己的Web應(yīng)用,則可以將自己的Web工程打包成war包,并將war包直接放到/sdeard/jetty /webapps/目錄下。


        上一頁 1 2 3 下一頁

        關(guān)鍵詞: Android 嵌入式 Web服務(wù)器

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉