跳转到内容

J2ME编程/SymbianOS和J2ME

来自Wikibooks,开放世界中的开放书籍


这不是SymbianOS的完整历史,而实际上是对SymbianOS的总结,以便我们作为J2ME开发人员能够确定在SymbianOS生态基础设施中,我们可以通过操作系统版本和设备系列版本访问哪些可选API。

在SymbianOS之上部署了两个主要的设备平台。诺基亚创建了Series60并将其授权给三星等其他公司。UIQ(Symbian的基于笔的UI)是索尼爱立信、摩托罗拉和Symbian有限公司的共同努力。

MIDP基础集,SymbianOS

[编辑 | 编辑源代码]

在我们开始J2ME平台之前,先做一个简短的脚注。在J2ME平台之前,SymbianOS附带了其他两个Java平台,SymbianOS 5上的嵌入式Java以及SymbianOS 6上的Personal Java和Javaphone组合。因此,为了准确反映哪些操作系统版本具有这种组合,这里将提及PersonalJava和JavaPhone(在Personal Profile之前)。注意:虽然底层操作系统在Symbian的后续版本中不限制堆大小、持久存储等,但JSR确实以JSR 185(JTWI)的形式限制了jar、jad和持久存储的大小。

SymbianOS 6.x

[编辑 | 编辑源代码]

2002年,MIDP 1.0被移植回SymbianOS 6版本。MIDP 1.0移植回的SymbianOS版本是SymbianOS 6.0和SymbianOS 6.1("标准Java". Symbian上的Java.)

因此,在2002年及以后的设备上,我们仅在SymbianOS 6.0和SymbianOS 6.1上拥有基本的MIDP 1.0。

  • MIDP
    • 除了pausedApp从未被调用之外,MIDP 1.0与MIDP 1.0规范一致。
    • CLDC 1.0
    • Sun的KVM
  • Personal Java(Personal Profile之前)
    • 修改后的Personal Java 3.0.x(PesonalJava应用程序环境1.1.1a)
    • JDVMI用于通过TCP/IP连接进行调试支持
  • JavaPhone 1.0
    • JavaPhone 1.0 API
    • 用于串行通信和安全套接字通信的Personal Java可选接口(支持HTTPS,但未实现javax.net.ssl)。
    • Java电话API(JTAPI)
    • Java移动电话

SymbianOS 7.0

[编辑 | 编辑源代码]

具有基本MIDP 1.0实现("SymbOS7.x". Symbian OS版本7.0功能描述.)

  • MIDP
    • 除了pausedApp从未被调用之外,MIDP 1.0与MIDP 1.0规范一致。
    • CLDC 1.0
    • 堆大小、代码大小和持久存储大小不受限制
    • 实现了空中下载配置
    • 实现了包括套接字在内的GCF
    • KVM虚拟机
  • Personal Java(Personal Profile之前)
    • 修改后的Personal Java 3.0.x(PesonalJava应用程序环境1.1.1a)
    • JDVMI用于通过TCP/IP连接进行调试支持
  • JavaPhone 1.0
    • JavaPhone 1.0 API
    • 用于串行通信和安全套接字通信的Personal Java可选接口(支持HTTPS,但未实现javax.net.ssl)。
    • Java电话API(JTAPI)
    • Java移动电话

SymbianOS 7.0s

[编辑 | 编辑源代码]

在这个版本的SymbianOS 7中,引入了MIDP 2.0("Symbos-v7s". Symbian OS版本7.0s功能描述. {{cite web}}: |work=第24位处有换行符(帮助)) 此MIDP 2.0实现包括

  • MIDP
    • 空中下载配置MIDP 2.0实现
    • 堆大小、代码大小和持久存储大小不受限制
    • GCF实现包括套接字、服务器套接字、数据报套接字、安全套接字、HTTPS和HTTP
    • 实现了WMA
    • 实现了蓝牙,但不包括Push和OBEX配置文件
    • 支持CLDC1.0实现
    • Sun的CLDC HI VM 1.0

此SymbianOS 7.0s版本有两个配置,智能手机和通信器。通信器版本同时包含上面描述的MIDP 2.0和此Personal Java配置

  • Personal Java(Personal Profile之前)
    • 修改后的Personal Java 3.0.x(PesonalJava应用程序环境1.1.1a)
    • JDVMI用于通过TCP/IP连接进行调试支持
  • JavaPhone 1.0
    • JavaPhone 1.0 API
    • 用于串行通信和安全套接字通信的Personal Java可选接口(支持HTTPS,但未实现javax.net.ssl)。
    • Java电话API(JTAPI)
    • Java移动电话

SymbianOS 8.0

[编辑 | 编辑源代码]

这是SymbianOS上第一个完全符合JTWI的MIDP 2.0实现("Symbos-v8x". Symbian OS版本8.0功能描述.)

  • OTA MIDP 2.0实现
  • 新的安全模型的完整JTWI实现,允许签名MIDlet
  • 堆大小、代码大小和持久存储不受限制
  • 完整的GCF支持
  • 实现了WMA
  • 实现了蓝牙,但不包括OBEX配置文件
  • CLDC1.1实现
  • 多媒体JSR 135
  • 3D图形JSR 184
  • 文件/PIM GCF JSR 75
  • Sun的CLDC HI 1.1 Vm,包含JNI子集

SymbianOS 8.1

[编辑 | 编辑源代码]

实现了符合JTWI的MIDP 2.0("Symbos-v8.1". Symbian OS版本8.1功能描述.)

  • OTA MIDP 2.0实现
  • MIDP 2.0
  • CLDC 1.1
  • 堆大小、代码大小和持久存储不受限制
  • GCF实现,包括所有套接字实现
  • PIM/文件GCF JSR 75
  • MMedia JSR 135
  • 3D图形JSR 184
  • 实现了蓝牙,但不包括OBEX配置文件
  • WMA
  • Sun的CLDC HI VM 1.0,包含JNI子集

SymbianOS 9.1

[编辑 | 编辑源代码]

实现了 MIDP 2.0 和 JTWI("Symbos-v91". Symbian OS 版本 9.1 功能描述.)

  • MIDP 2.0
  • CLDC 1.1
  • WMA
  • MMedia JSR 135
  • 3D 图形 JSR1 84
  • 实现了蓝牙,但不包括OBEX配置文件
  • JTWI 安全模型
  • 堆大小、代码大小和持久存储大小不受限制
  • Sun的CLDC HI VM 1.0,包含JNI子集

其他 SymbianOS 版本

[编辑 | 编辑源代码]

其他诺基亚系列

[编辑 | 编辑源代码]
  • Series80
    • 设备平台 2.0
      • 来自底层 SymbianOS 7.0s 的 MIDP 2.0/CLDC 1.0,特别是通信器 SymbianOS 7.0s 配置
      • 使用 IBM 的 J9 VM 实现 CDC 和个人资料
  • Series90
    • 设备平台 2.0
      • 来自底层 SymbianOS 8.0 的 MIDP2.0 CLDC1.1
      • 包 com.nokia.mid.ui 和 com.nokia.mid.sound 中的旧版闭源诺基亚 UI API
  • 设备平台 1.0
    • 基于 SymbianOS 6.1,具有 MIDP 1.0 和 CLDC 1.0 以及包 com.nokia.mid.ui 和 com.nokia.mid.sound 中的旧版诺基亚 UI API。
    • 在诺基亚 UI API 中不支持背光
  • 设备平台 2.0
    • 功能包 1.0cs
      • 基于 SymbianOS 7.0s,提供 MIDP 2.0 和 CLDC 1.0
      • 支持 MMAPI JSR 135
      • 支持 SymbianOS 7.0s 中的其他 JSR
    • 功能包 2.0
      • 基于 SymbianOS 8.0,实际内核版本为 SymbianOS 8.0b,具有 MIDP 2.0 和 CLDC 1.1
      • 支持所有 SymbianOS 8.0 的 JSR
    • 功能包 3.0
      • 基于 SymbianOS 8.1,提供 MIDP 2.0 和 CLDC 1.1
      • 支持所有 SymbianOS 8.1 的 JSR
  • UIQ 2.0
    • 基于 SymbianOS 7.0,提供 MIDP 1.0 和 CLDC 1.0
    • 支持 SymbianOS 7.0 的 JSR
  • UIQ 2.1
    • 基于 SymbianOS 7.0s,提供 MIDP 2.0 和 CLDC 1.0
    • 支持 SymbianOS 7.0s 的 JSR

通过使用这些信息,您不仅可以确定设备上 MIDP 和 CLDC 的版本,还可以确定在您可能针对应用程序开发的 SymbianOS 设备上可以访问哪些由 JSR 表示的可选 API。

另请参阅

[编辑 | 编辑源代码]

参考文献

[编辑 | 编辑源代码]

商标声明

[编辑 | 编辑源代码]

J2ME、Java 和所有基于 Java 的商标是 Sun Microsystems, Inc. 在美国和其他国家/地区的商标或注册商标。所有其他商标均为其各自所有者的财产。

华夏公益教科书