自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Android應(yīng)用移植到OPhone平臺(tái)指南

移動(dòng)開(kāi)發(fā)
Android一詞的本義指“機(jī)器人”,同時(shí)也是Google于2007年11月5日宣布的基于Linux平臺(tái)的開(kāi)源手機(jī)操作系統(tǒng)的名稱(chēng),該平臺(tái)由操作系統(tǒng)、中間件、用戶(hù)界面和應(yīng)用軟件組成,號(hào)稱(chēng)是首個(gè)為移動(dòng)終端打造的真正開(kāi)放和完整的移動(dòng)軟件。

1.1    概述

OPhone平臺(tái)基于Linux和開(kāi)放手機(jī)聯(lián)盟(OHA)的Android系統(tǒng),經(jīng)過(guò)中國(guó)移動(dòng)的創(chuàng)新研發(fā),設(shè)計(jì)出擁有新穎獨(dú)特的用戶(hù)操作界面,增強(qiáng)了瀏覽器能力和WAP兼容性,優(yōu)化了多媒體領(lǐng)域的OpenCORE、瀏覽器領(lǐng)域的WebKit等業(yè)內(nèi)眾多知名引擎,增加了包括游戲、Widget、Java ME等在內(nèi)的先進(jìn)平臺(tái)中間件。

本文重點(diǎn)介紹OPhone和Android應(yīng)用開(kāi)發(fā)的差異,為OPhone和Android開(kāi)發(fā)者提供指導(dǎo).

1.2    兼容性

目前,OPhone共發(fā)布了1.0和1.5兩個(gè)平臺(tái)版本,其中OPhone 1.0與Android 1.0兼容,OPhone 1.5與Android 1.5兼容。由于Android 1.5與Android 1.0不兼容,因此OPhone 1.5與OPhone 1.0不兼容。Android 1.0 API和Android 1.5 API變化比較大,是導(dǎo)致OPhone 1.0和OPhone 1.5之間差異的主要原因。

Android CTS (Compatibility Test Suite)是Google提供的Android兼容性測(cè)試工具。CTS共有2萬(wàn)多個(gè)測(cè)試用例,OPhone取得了很好的CTS測(cè)試結(jié)果:CTS測(cè)試通過(guò)率:99.96%。Android Market排名前270的應(yīng)用(2009年10月)有超過(guò)80%的可以直接在OPhone平臺(tái)上運(yùn)行。部分應(yīng)用移植失敗的原因主要有:

OPhone不支持Google Maps庫(kù)

硬件方面的差異:顯示分辨率、傳感器、和硬件相關(guān)的特殊庫(kù)

Tabview的UI顯示

1.3   OPhone API

OPhone SDK在兼容Android API的基礎(chǔ)上還提供了OPhone API,來(lái)擴(kuò)展OPhone平臺(tái)的能力。如果應(yīng)用程序使用了OPhone API,則此程序無(wú)法移植到Android系統(tǒng)。關(guān)于OPhone API的使用,請(qǐng)參考OPhone開(kāi)發(fā)者社區(qū)的文檔(http://www.ophonesdn.com/documentation/)。#t#

OPhone SDK 1.0提供了如下OPhone API:

Home Screen API

Local Search API

Mail API

OPhone SDK 1.5提供了如下OPhone API:

AGPS API

Video Telephony API

Home Screen API

Local Search API

1.4   應(yīng)用程序模型

OPhone平臺(tái)除了支持APK應(yīng)用程序開(kāi)發(fā)之外,還支持Mobile Widget和Java ME應(yīng)用程序開(kāi)發(fā)。

Mobile Widget 應(yīng)用是采用HTML、JavaScript和CSS等網(wǎng)絡(luò)技術(shù)開(kāi)發(fā)的應(yīng)用程序。在OPhone中,Mobile Widget應(yīng)用遵循的是聯(lián)合創(chuàng)新實(shí)驗(yàn)室(Joint Innovation Lab, JIL) 的JIL Widget 規(guī)范。詳細(xì)信息請(qǐng)參考如下網(wǎng)址:

Ophone平臺(tái)支持Java ME應(yīng)用程序(MIDlet)的開(kāi)發(fā),目前OPhone 1.5上實(shí)現(xiàn)了中國(guó)移動(dòng)Java 4.1規(guī)范。

1.5     應(yīng)用程序開(kāi)發(fā)的差異

1.5.1   網(wǎng)絡(luò)數(shù)據(jù)連接的方法

OPhone與Android建立網(wǎng)絡(luò)數(shù)據(jù)連接的方法有所不同。OPhone 平臺(tái)實(shí)現(xiàn)了多個(gè)應(yīng)用程序?qū)Ψ纸M數(shù)據(jù)復(fù)用的功能,不同的應(yīng)用可以根據(jù)自身需要,打開(kāi)不同的網(wǎng)絡(luò)連接,通過(guò)這種方式我們可以在不同的OPhone應(yīng)用中同時(shí)進(jìn)行諸如瀏覽網(wǎng)頁(yè)、接受彩信、發(fā)送郵件這樣的網(wǎng)絡(luò)任務(wù)。

關(guān)于如何在OPhone中實(shí)現(xiàn)網(wǎng)絡(luò)連接的管理,詳情請(qǐng)見(jiàn):

1.5.2   不支持Google Maps

OPhone目前不支持Google Maps API,因此使用Google Maps API開(kāi)發(fā)的Android應(yīng)用程序?qū)o(wú)法移植到OPhone平臺(tái)。

1.5.3   多分辨率支持由于市面上的大部分Android終端設(shè)備都是HVGA(480x320),因此許多應(yīng)用程序在開(kāi)發(fā)時(shí)并未考慮多分辨率的問(wèn)題。這就導(dǎo)致部分Android Market上的應(yīng)用程序安裝在非HVGA(480x320)分辨率的OPhone終端,出現(xiàn)分辨率不匹配的問(wèn)題。

目前OPhone終端除了支持HVGA(480x320)分辨率之外,還支持nHD(640x360)、WVGA(800x480)、FWVGA(854x480)等。因此,在OPhone平臺(tái)上開(kāi)發(fā)應(yīng)用程序,應(yīng)當(dāng)考慮多分辨率支持,并且在模擬器上應(yīng)用測(cè)試時(shí)使用分辨率設(shè)置。#p#

不同的OPhone終端所支持的傳感器不同,因此一些需要特殊傳感器支持的游戲或應(yīng)用無(wú)法在某些OPhone終端上正常運(yùn)行。

目前Android 平臺(tái)支持的傳感器有:

android. hardware.Sensor

–        TYPE_ACCELEROMETER

–        TYPE_GYROSCOPE

–        TYPE_LIGHT

–        TYPE_MAGNETIC_FIELD

–        TYPE_ORIENTATION

–        TYPE_PRESSURE

–        TYPE_PROXIMITY

–        TYPE_TEMPERATURE

目前的建議是,在使用之前先檢測(cè)當(dāng)前OPhone終端支持哪些傳感器,相關(guān)的測(cè)試代碼如下:

  1. SensorManager sensorMgr =   
  2. (SensorManager)getSystemService(Context.SENSOR_SERVICE);     
  3. List list = sensorMgr.getSensorList(Sensor.TYPE_ALL);     
  4. for (int i = 0; i < list.size(); i++) {     
  5. Sensor sensor = (Sensor) list.get(i);     
  6. result += "\t" + sensor.getName() + "\n";     
  7. }    

1.5.5      Tabview的UI顯示

部分Android Market上使用了Tabview的應(yīng)用安裝在OPhone終端上會(huì)出現(xiàn)顯示錯(cuò)誤。這是由于OPhone平臺(tái)只允許在一屏有三個(gè)Tab,而對(duì)此的實(shí)現(xiàn)導(dǎo)致了該問(wèn)題的發(fā)生。

但只要嚴(yán)格按照以下例子程序就可以避免該問(wèn)題的出現(xiàn):

1.5.6    OPhone特殊UI風(fēng)格

由于部分的OPhone終端設(shè)備沒(méi)有Home按鍵,因此對(duì)于應(yīng)用開(kāi)發(fā)者而言,不建議隱藏Status Bar和Title Bar。

但由于某些應(yīng)用,特別是游戲,需要全屏顯示,可以參考一下代碼實(shí)現(xiàn):

1.5.7   應(yīng)用簽名

OPhone平臺(tái)和Android平臺(tái)在應(yīng)用簽名方面沒(méi)有區(qū)別,但需要注意的是,調(diào)試用簽名和發(fā)布用簽名所使用的證書(shū)是不同的。如果應(yīng)用程序沒(méi)有被簽名,在安裝的時(shí)候就會(huì)出現(xiàn)以下錯(cuò)誤:Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]

責(zé)任編輯:chenqingxiang 來(lái)源: ophonesdn
相關(guān)推薦

2010-07-26 10:56:32

J2ME平臺(tái)

2009-10-10 13:54:20

OPhone

2009-03-26 08:26:22

AndroidGoogle移動(dòng)OS

2015-05-05 10:16:17

AndroidWindows

2010-03-04 16:08:21

Android系統(tǒng)平臺(tái)

2010-04-14 08:44:35

IntelAndroidAtom芯片

2013-05-13 09:28:38

移植

2012-06-19 10:22:16

Windows Pho

2009-02-17 15:59:55

2012-05-18 20:30:19

微軟 Android ap

2011-05-04 09:29:22

2010-07-23 14:51:09

OPhone開(kāi)發(fā)

2011-06-15 18:20:20

Qt 移植 Android

2010-07-23 15:30:18

2011-02-21 10:07:46

OPhone 2.5OPhone

2013-09-02 15:49:38

DirectX 9Windows

2010-01-28 11:26:39

Android log

2013-03-25 17:16:11

2009-03-27 08:56:35

AndroidGoogle移動(dòng)OS

2009-04-10 08:42:38

OMS移動(dòng)OSophone
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)