程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2ME >> 開發高可移植性J2ME的軟件(2)

開發高可移植性J2ME的軟件(2)

編輯:J2ME

檢查JSR支持

檢查JSR的支持簡單的方式有兩種:

1. 是通過System.getProperty("property_name")的方式進行判斷,一般如果存在相關的APIs支持,它會返回一個非null字符串。

檢測代碼

System.getProperty(property_key);
public String getInfo(String info) {
if (info == null) {
return "<unknown>";
} else {
return info;
}
}

2. 通過Class.forName(clase_name)的方式。

private boolean hasClassExit(String aClassName) {
try {
Class.forName(aClassName);
return true;
} catch (Exception e) {
return false;
}
}

上面的檢測代碼相對比較簡單,而且也容易理解,關鍵是那些JSR 支持的屬性名稱,或者APIs的寫法。

下面是部分屬性名稱,僅供參考。

System property

Description

Value

microedition.platform

Defined in CLDC 1.0 and CLDC 1.1.

microedition.encoding

Always returns ISO-8859-1.

microedition.configuration

Defined in CLDC 1.0 and CLDC 1.1.

microedition.profiles

依賴於底層實現

microedition.locale*

JSR 37

依賴於底層實現

microedition.commports

依賴於底層實現

microedition.hostname

localhost

microedition.profiles

MIDP2.0

file.separator

文件分割符

依賴於底層實現(/,\)

microedition.pim.version

JSR 75

1.0

microedition.smartcardslots

JSR 177

依賴於底層實現

microedition.location.version

JSR 179

1.0

microedition.sip.version

JSR 180

1.0

microedition.m3g.version

JSR 184

1.0

microedition.jtwi.version

JSR 185

1.0

wireless.messaging.sms.smsc

JSR 205

依賴於底層實現

wireless.messaging.mms.mmsc

JSR 205

依賴於底層實現

CHAPI-Version

JSR 211

JSR 211

Nokia的一些系統參數

com.nokia.Network.Access

網絡參數

pd - GSM

pd.EDGE - EDGE

pd.3G - 3G

pd.HSDPA - 3G

csd - GSM CSD/HSCSD

bt_pan - Bluetooth PAN network

wlan - WIFI

na - 無任何網絡

com.nokia.mid.dateformat

日期格式

Yy/mm/dd

com.nokia.mid.timeformat

時間格式

hh:mm

com.nokia.memoryramfree

動態內存分配

Note: S60 第3版不支持

com.nokia.mid.batterylevel

電池狀態

com.nokia.mid.countrycode

城市代碼

com.nokia.mid.Networkstatus

網絡工作狀態

com.nokia.mid.Networkavailability

網絡是否激活狀態

com.nokia.mid.Networkid

網絡ID

返回2個值

Network ID

網絡簡稱

com.nokia.mid.Networksignal

com.nokia.mid.cellid

Cellid

基站信息ID

com.nokia.mid.imei

Imei號

手機唯一標識號

com.nokia.mid.imsi

應用程序屬性

應用程序屬性值是在應用程序描述符文件或者MANIFEST文件中定義的,當我們部署應用程序的時候可以定義應用程序屬性。比如下面是一個典型的JAD文件內容。

MIDlet-1: HttpWrapperMidlet,httpwrapper.HttpWrapperMIDlet

MIDlet-Jar-Size: 16315

MIDlet-Jar-URL: HttpWrapper.jar

MIDlet-Name: HttpWrapper

MIDlet-Vendor: Vendor

MIDlet-Version: 1.0

MicroEdition-Configuration: CLDC-1.0

MicroEdition-Profile: MIDP-1.0

Which-Locale: en

其中Which-Locale就是應用程序屬性值,我們可以通過MIDlet的成員方法getAppProperty()來得到它,代碼片斷如下:

import Javax.microedition.midlet.*;
public class MyMIDlet extends MIDlet {
private String suiteName;
private String which_locale;
public MyMIDlet(){
suiteName = getAppProperty( "MIDlet-Name" );
which_locale = getAppProperty("Which-Locale");
}
//這裡省略了其他代碼
}

屬性值對大小寫是敏感的,如果屬性值在底層系統、JAD文件和Manifest文件中都沒有定義的話,那麼將返回Null。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved