久久九九国产无码高清_人人做人人澡人人人爽_日本一区二区三区中文字幕_日韩无码性爱免费

基于AMF的Android數(shù)據(jù)通信論文

時(shí)間:2024-10-29 22:47:01 通信工程畢業(yè)論文 我要投稿
  • 相關(guān)推薦

基于AMF的Android數(shù)據(jù)通信論文

  文章將Flash/Flex開(kāi)發(fā)中用于網(wǎng)絡(luò)通信的AMF技術(shù),移植到Android平臺(tái),實(shí)現(xiàn)了Android應(yīng)用的高效網(wǎng)絡(luò)數(shù)據(jù)通信。

基于AMF的Android數(shù)據(jù)通信論文

  截至到2015年1月,Android在國(guó)內(nèi)移動(dòng)操作系統(tǒng)中的份額已達(dá)80.4%,市場(chǎng)占有率相比IOS等系統(tǒng)具有巨大的優(yōu)勢(shì)。Android系統(tǒng)的網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)常受到傳輸數(shù)據(jù)類(lèi)型繁雜、數(shù)據(jù)量大、手機(jī)流量限制等制約,因此選用一種通信效率高、解析速度快的數(shù)據(jù)傳輸技術(shù)可有效降低程序響應(yīng)時(shí)間、提高用戶體驗(yàn)。

  1AMF

  AMF(Action Message Format)是Adobe公司開(kāi)發(fā)的一種免費(fèi)開(kāi)源、專(zhuān)用于Flash/Flex應(yīng)用與服務(wù)器端通信的數(shù)據(jù)編碼模式,其通信過(guò)程基于HTTP協(xié)議,具有兼容性好、傳輸效率高、解析速度快等優(yōu)點(diǎn)。

  AMF可將基本數(shù)據(jù)類(lèi)型如List、Array直接進(jìn)行編碼,并在服務(wù)器端自動(dòng)解析為相應(yīng)的對(duì)象。這種編碼模式既符合面向?qū)ο蟮木幊趟枷耄趾?jiǎn)化了編程人員的工作、縮短開(kāi)發(fā)時(shí)間;AMF對(duì)數(shù)據(jù)進(jìn)行二進(jìn)制編碼,可實(shí)現(xiàn)數(shù)據(jù)的高度壓縮,因此非常適合傳輸類(lèi)型繁雜、數(shù)量大的數(shù)據(jù)。數(shù)據(jù)量越大,AMF 的傳輸效率就越高,遠(yuǎn)遠(yuǎn)超過(guò)HTTP、Web Service等Android應(yīng)用常使用的傳輸方式。

  2 BlazeDS

  BlazeDS是Adobe公司開(kāi)發(fā)的一款免費(fèi)開(kāi)源的服務(wù)器端消息服務(wù)組件,基于遠(yuǎn)程對(duì)象調(diào)用(Remote Object)和消息服務(wù)(Message Service)技術(shù),用于和Flash/Flex應(yīng)用程序通信。BlazeDS包含了AMF的Java實(shí)現(xiàn),通常以Servlet的方式部署在Web服務(wù)器上。

  3 Android平臺(tái)的數(shù)據(jù)傳輸

  Android應(yīng)用與服務(wù)器進(jìn)行網(wǎng)絡(luò)通信,目前主要有Socket、HTTP和Web Service三種方式。Socket方式主要應(yīng)用于實(shí)時(shí)通訊,效率最高,但由于其涉及底層協(xié)議,實(shí)現(xiàn)較復(fù)雜;HTTP方式因?qū)崿F(xiàn)簡(jiǎn)單、方便,更為常用,但通信效率不高;Web Service是一個(gè)支持不同操作系統(tǒng)、不同軟件在網(wǎng)絡(luò)間互相操作的模塊化組件,常用于Android應(yīng)用調(diào)用第三方服務(wù)器提供的數(shù)據(jù)服務(wù),由于底層通常使用HTTP和XML傳輸數(shù)據(jù),通信效率也不高。

  4 AMF在Android平臺(tái)實(shí)現(xiàn)

  BlazeDS的源代碼中已包括AMF的傳輸、序列化與反序列化等功能,但因?yàn)锳ndroid SDK與JDK的差異,無(wú)法直接在Android上使用。經(jīng)研究,使用第三方的AMF解析組件并將組件針對(duì)Android SDK進(jìn)行修改是更為高效的解決方法。

  第三方AMF解析組件am~serializer實(shí)現(xiàn)了BlazeDS中AMF序列化與反序列化的主要功能,可在Google Code下載。但在Android上使用am~serializer,需解決Android SDK缺少部分類(lèi)文件如Property Descriptor類(lèi)、與服務(wù)器端通信類(lèi)的問(wèn)題。

  4.1內(nèi)省類(lèi)

  Property Descriptor在JDK中是一個(gè)用于內(nèi)省的類(lèi),在不修改Android SDK的前提下可用“反射”機(jī)制模擬出其基本功能。

  首先需建立類(lèi)Property Descriptor,聲明成員變量name、display Name、read Method、write Method,并生成對(duì)應(yīng)的get和set方法。

  然后,建立用于模擬內(nèi)省功能的類(lèi)Property DescriptorTool,部分代碼如下.

  4.3通信類(lèi)

  由于amf-serial izer組件只能解析AMF數(shù)據(jù),沒(méi)有與服務(wù)器端通信的功能,所以還需要參考BlazeDS源代碼中的AMFConnection類(lèi),實(shí)現(xiàn)網(wǎng)絡(luò)傳輸?shù)墓δ堋?/p>

  5測(cè)試

  為驗(yàn)證AMF的數(shù)據(jù)傳輸效率優(yōu)于Web Service和HHTTP方式,以學(xué)生基本信息數(shù)據(jù)為例,把測(cè)試程序使用不同的數(shù)據(jù)傳輸方式與網(wǎng)絡(luò)服務(wù)器通信所耗費(fèi)的時(shí)間進(jìn)行比較。為減小誤差,每組數(shù)據(jù)測(cè)試lO次、取平均值如表l所示。

  6結(jié)語(yǔ)

  測(cè)試數(shù)據(jù)顯示,在Android移動(dòng)應(yīng)用開(kāi)發(fā)中使用AMF數(shù)據(jù)通信格式是理想的選擇,相比HTTP和Web Service方式,可以更好地節(jié)省流量、提高傳輸效率。

【基于AMF的Android數(shù)據(jù)通信論文】相關(guān)文章:

Android論文參考文獻(xiàn)范例12-11

構(gòu)建鐵路數(shù)據(jù)通信論文11-09

網(wǎng)絡(luò)數(shù)據(jù)通信的隱蔽通道技術(shù)論文11-07

地鐵信號(hào)系統(tǒng)數(shù)據(jù)通信論文11-09

基于FPGA的TS201 linkport數(shù)據(jù)通信設(shè)計(jì)與實(shí)現(xiàn)03-30

提高數(shù)據(jù)通信網(wǎng)絡(luò)安全的對(duì)策論文02-14

基于策略的網(wǎng)絡(luò)管理技術(shù)論文12-04

淺析基于實(shí)驗(yàn)的化學(xué)教學(xué)的論文11-30

基于EVA的目標(biāo)成本研究論文03-19

基于氣象條件的建筑施工的論文11-07