当前位置: 首页 > 工具软件 > Comtor J2ME > 使用案例 >

J2ME system property

纪正德
2023-12-01

 

参数表:

public static final String key[] = {

        "microedition.platform",

"microedition.configuration",

"microedition.profiles",

"microedition.encoding",

"microedition.locale",

"microedition.commports",

"microedition.hostname",

"microedition.jtwi.version",

"microedition.media.version",

"supports.mixing", 

        "supports.audio.capture",

"supports.video.capture",

"supports.recording",

"audio.encodings",

"video.snapshot.encodings",

"streamable.contents",

"wireless.messaging.sms.smsc",

"wireless.messaging.mms.mmsc",

"microedition.m3g.version",

"bluetooth.api.version", 

        "microedition.io.file.FileConnection.version",

"microedition.pim.version",

"phone.imei",

"phone.mcc",

"phone.mnc",

"phone.lai",

"phone.cid",

"com.siemens.IMEI",

"java.home",

"java.class.path", 

        "java.specification.version",

"java.specification.vendor",

"java.specification.name",

"java.version",

"java.vendor",

"java.vendor.url",

"java.vm.specification.version",

"java.vm.specification.vendor",

"java.vm.specification.name",

"java.vm.version", 

        "java.vm.vendor",

"java.vm.name",

"java.class.version",

"os.name", "os.arch",

"os.version", "file.separator",

"path.separator", "line.separator",

"user.name", 

        "user.home",

"user.dir",

"java.runtime.name",

"sun.boot.library.path",

"file.encoding.pkg",

"user.country",

"sun.os.patch.level",

"java.runtime.version",

"java.awt.graphicsenv",

"java.endorsed.dirs", 

        "java.io.tmpdir",

"user.variant",

"sun.java2d.fontpath",

"java.library.path",

"user.timezone",

"java.awt.printerjob",

"file.encoding",

"sun.arch.data.model",

"user.language",

"awt.toolkit", 

        "java.vm.info",

"java.ext.dirs",

"sun.boot.class.path",

"java.vendor.url.bug",

"sun.cpu.endian",

"sun.io.unicode.encoding",

"sun.cpu.isalist"

    };

public static void main(String[] args){

   System.out.println("Java运行时环境版本:/n"+System.getProperty("java.version"));

   System.out.println("Java 运行时环境供应商:/n"+System.getProperty("java.vendor"));

   System.out.println("Java 供应商的URL:/n"+System.getProperty("java.vendor.url"));

   System.out.println("Java安装目录:/n"+System.getProperty("java.home"));

   System.out.println("Java 虚拟机规范版本:/n"+System.getProperty("java.vm.specification.version"));

   System.out.println("Java 类格式版本号:/n"+System.getProperty("java.class.version"));

   System.out.println("Java类路径:/n"+System.getProperty("java.class.path"));

   System.out.println("加载库时搜索的路径列表:/n"+System.getProperty("java.library.path"));

   System.out.println("默认的临时文件路径:/n"+System.getProperty("java.io.tmpdir"));

   System.out.println("要使用的 JIT 编译器的名称:/n"+System.getProperty("java.compiler"));

   System.out.println("一个或多个扩展目录的路径:/n"+System.getProperty("java.ext.dirs"));

   System.out.println("操作系统的名称:/n"+System.getProperty("os.name"));

   System.out.println("操作系统的架构:/n"+System.getProperty("os.arch"));

   System.out.println("操作系统的版本:/n"+System.getProperty("os.version"));

   System.out.println("文件分隔符(在 UNIX 系统中是“/”):/n"+System.getProperty("file.separator"));

   System.out.println("路径分隔符(在 UNIX 系统中是“:”):/n"+System.getProperty("path.separator"));

   System.out.println("行分隔符(在 UNIX 系统中是“/n”):/n"+System.getProperty("line.separator"));

   System.out.println("用户的账户名称:/n"+System.getProperty("user.name"));

   System.out.println("用户的主目录:/n"+System.getProperty("user.home"));

   System.out.println("用户的当前工作目录:/n"+System.getProperty("user.dir"));

 

在J2ME开发中,我们经常需要和手机系统进行交互,获得一些和系统相关的信息,在J2ME API设计中,提供了一系列的系统属性

表1   CLDC、MIDP和JTWI属性
属性名称
属性作用
microedition.profiles
代表手机支持的MIDP版本,返回格式值为“MIDP-1.0”或“MIDP-2.0”
microedition.configuration
代表手机支持的CLDC版本,返回格式值为“CLDC-1.0”或“CLDC-2.0”
microedition.locale
代表手机所在的国家或地区,返回值格式为“en-US”
microedition.platform
代表手机的品牌和型号,Nokia手机的返回值格式为“Nokia6310i/4.42”
microedition.encoding
代表手机默认的字符集名称,返回值格式为“ISO-8859-1”
microedition.commports
代表手机可以使用的串口列表,返回值中各个串口之间使用逗号分隔
microedition.hostname
MIDP2.0定义,代表本地主机名称,需要手机支持。
microedition.jtwi.version
代表手机支持的JTWI版本,值必须是“1.0”
 表2 可选包属性
属性名称
属性作用
microedition.media.version
代表手机支持的MMAPI版本,如果不支持则返回null
microedition.pim.version
代表手机支持的PIM API版本,如果不支持则返回null
microedition.m3g.version
代表手机支持的M3G API版本,如果不支持则返回null
microedition.location.version
代表手机支持的Location API版本,如果不支持则返回null
Bluetooth.api.version
代表手机支持的BT API版本,如果不支持则返回null
microedition.io.file.
FileConnection.version
代表手机支持的FC API版本,如果不支持则返回null
microedition.global.version
代表手机支持的Mobile Internationalization API(JSR-238)版本,如果不支持则返回null
microedition.chapi.version
代表手机支持的CH(Content Handler) API(JSR211)版本,如果不支持则返回null
microedition.sip.version
代表手机支持的SIP API版本,如果不支持则返回null
 表3 MMAPI属性
属性名称
属性作用
supports.mixing
代表手机是否支持混音(同时播放多个Player),返回值为“true”或“false”
supports.audio.capture
代表手机是否支持声音捕获(录音),返回值为“true”或“false”
supports.video.capture
代表手机是否支持视频捕获(录像),返回值为“true”或“false”
supports.recording
代表手机是否支持记录(record),返回值为“true”或“false”
audio.encodings
代表手机支持的声音格式,返回值格式为“encoding=audio/wav”,多个格式之间使用至少一个空格进行间隔
video.encodings
代表手机支持的视频格式,返回值格式为“encoding=video/3gpp”,多个格式之间使用至少一个空格进行间隔
video.snapshot.encodings
代表手机使用getSnapshot方法获得的视频快照格式,返回值格式为“encoding=png”,多个格式之间使用至少一个空格进行间隔
streamable.contents
代表手机支持的流媒体格式,返回null代表不支持
表4 Wireless Messaging API属性
属性名称
属性作用
wireless.messaging. sms . sms c
代表手机发送短信时的短信服务中心号码
表5 FileConnection API
属性名称
属性作用
fileconn.dir.photos
代表手机中存储照片和其它图片的目录,例如“file:///c:/My files/ Images /”
fileconn.dir.videos
代表手机中存储视频的目录,例如“file:///c:/My files/Video clips/”
fileconn.dir.tones
代表手机中存储声音的目录,例如“file:///c:/My files/Tones/”
fileconn.dir.memorycard
代表手机中存储卡的根目录。例如“file:///d:/”
fileconn.dir.private
(Nokia S40不支持) 
代表手机中MIDlet的私有工作目录,例如“file:///c:/System/MIDlets/[1015f294]/scratch”
fileconn.dir.photos.name
代表手机中图片目录的名称,例如“Images”
fileconn.dir.videos.name
代表手机中视频目录的名称,例如“Video clips”
fileconn.dir.tones.name
代表手机中声音目录的名称,例如“Sound clips”
file.separator
代表手机中的文件分隔符,例如“/”
fileconn.dir.memorycard.name
代表手机中存储卡的名称,例如“Memory card”

 使用这些属性,可以获得在程序运行过程中需要的很多和系统相关的信息,也可以使用表2中的属性来获得手机是否支持对应的可选包等信息。
实际使用示例:String name = System.getProperty(“microedition.platform”);

注意:如果需要获得JVM或jad文件中的信息,需要使用MIDlet类中的getAppProperty方法,其属性名则需要查阅jad文件的设定,和本文所述的属性名无关。

J2ME Defined System Properties

JSRProperty Name
Default Value¹
30microedition.platformnull
 microedition.encodingISO8859_1
 microedition.configurationCLDC-1.0
 microedition.profilesnull
37microedition.localenull
 microedition.profilesMIDP-1.0
75microedition.io.file.FileConnection.version1.0
 file.separator(impl-dep)
 microedition.pim.version1.0
118microedition.localenull
 microedition.profilesMIDP-2.0
 microedition.commports(impl-dep)
 microedition.hostname(impl-dep)
120wireless.messaging.sms.smsc(impl-dep)
139microedition.platform(impl-dep)
 microedition.encodingISO8859-1
 microedition.configurationCLDC-1.1
 microedition.profiles(impl-dep)
177microedition.smartcardslots(impl-dep)
179microedition.location.version1.0
180microedition.sip.version1.0
184microedition.m3g.version1.0
185microedition.jtwi.version1.0
195microedition.locale(impl-dep)
 microedition.profilesIMP-1.0
205wireless.messaging.sms.smsc(impl-dep)
205wireless.messaging.mms.mmsc(impl-dep)
211CHAPI-Version

1.0

 类似资料:

相关阅读

相关文章

相关问答