技术专题

Java™

 

将你的应用推向最广大市场

 
 

希望开始Java™应用开发吗?

Java™ ME for Nokia Platforms E-learning培训模块

这个e-learning培训模块概要介绍了如何开始为诺基亚平台开发Java™ ME应用。它涵盖开发过程、标准Java ME功能的使用,及另外一些MIDP APIs的使用方法等。

Java™ ME 开发伙伴库

Java™ ME开发伙伴库是面向Java开发伙伴的完整资源,目的是方便大家使用S60平台或Series 40平台开发移动Java应用或服务。这个库中包括介绍性信息、入门指导、教程,及API级信息。这个库是HTML格式,既可作为独立版本,也可作为Eclipse插件使用。

 

 

Java™ Platform, Micro Edition (Java™ ME),针对移动应用而优化的Java语言版本,是移动终端上最为流行的runtime环境。它提供了将应用推向广大市场的空前机会。

 

诺基亚平台提供了整个行业中对Java ME APIs的最广泛支持。此外,为帮助你将应用推向最广大的市场,诺基亚通过支持Mobile Service Architecture (JSR-248)而致力于降低Java APIs的分化。

因而,不管你是希望利用诺基亚先进的Java APIs还是要为范围广泛的Java终端构建应用,诺基亚对Java技术的支持时刻在你身边。

 

请了解下列诺基亚论坛重要资源中有关Java开发的更多信息:

 

 

 

 

 

Java™技术和诺基亚平台— 珠联璧合

移动Java™应用使你有机会为移动终端创建功能丰富广受欢迎的应用。诺基亚在全球最受欢迎的移动电话中提供了最为全面的Java技术支持。诺基亚以其广泛的技术资源为你提供各个阶段的帮助,从编制第一行代码到构建可赢利的商业性Java应用,无所不在。本页将对此作详细介绍。

 

诺基亚支持哪种Java™技术?

最新的诺基亚平台基于四种重要的支持技术:

 

  • 移动信息设备描述2.1 (Mobile Information Device Profile 2.1,JSR-118),它为应用开发提供了一些基本的APIs,如创建用户界面或储存应用数据。
  • 有限连接设备配置1.1 (Connected Limited Device Configuration 1.1 , JSR-139),它提供了MIDP得以在其上实现的一些低级别编程接口。
  • 针对无线行业的Java™技术 (Technology for the Wireless Industry, JSR-185),它通过支持JSR-118, JSR-120, JSR-135, 及JSR-139为移动终端定义了通用的Java应用环境。
  • 移动服务架构(Mobile Service Architecture, JSR-248),它提供了JSR-75, JSR-82, JSR-118, JSR-135, JSR-139, JSR-184, JSR-205, 和JSR-226的统一实现,以帮助降低Java APIs的分化。

在这些实现技术之外,或被包括在这些技术之中,最新的诺基亚平台和终端提供了表1所列举的各种JSRs实现。

Java™ technology Java™技术 Series 40 平台

S60

平台

针对J2ME™平台的PDA可选包(JSR-75)

访问终端名片夹、个人信息,和日历信息;读取和写入终端文件

针对蓝牙的Java™ APIs v1.1 (JSR-82)

利用蓝牙连接性发送和接收数据及信息

无线消息API (JSR-120)

收发SMS消息

移动媒体API (JSR-135)

对各种类型的音频、静态图像,及视频内容进行录制及复制或渲染

J2ME™ Web服务规范(JSR-172)

访问RPC web服务,及解析XML文件,将web服务从桌面扩展到移动终端。

针对J2ME™ 的安全及信任服务 (JSR-177)

使用密码APIs,一项数字签名服务,及用户证书管理,用以提供安全的数据访问。

 

针对J2ME™ 的定位API  (JSR-179)

确定某台终端的位置并访问地标信息用于地图和定位应用。

SIP API for J2ME™ (JSR-180)

收发SIP消息以创建基于IP的终端到终端通信应用。

 

针对J2ME™的移动3D图形API (JSR-184)

针对游戏及其他面向图形的应用对3D图形进行渲染及使用3D内容的高效OTA部署。

 

无线消息API 2.0 (JSR-205)

创建、发送,及接收SMS和MMS消息。

内容处理API (JSR-211)

定义针对特定文件类型的内容处理器,因此能让应用无缝地处理多媒体和web内容。

 

针对J2ME™的可缩放2D矢量图形API (JSR-226)

使用SVGT增强应用的外部表现,并简化富视觉界面的开发过程

高级多媒体补充(JSR-234)

使用增强的音乐和3D音频处理,提供丰富多彩的音频体验

移动传感器API (JSR-256)

支持采集诺基亚N97移动电脑手机上的加速度计、电量传感器、充电状态传感器,及网络场强传感器的信息。

  Nokia N97

eSWT API

构建使用该平台本地UI的Java应用以向用户提供既熟悉又直观的应用界面

 

MobInfo API

访问一整套的终端信息,如终端IMEI号、网络可用性,及电量

 

IAPInfo API

清晰定义应用所使用的互联网APIs

 

 

Nokia UI API

扩展为诺基亚终端所编制的MIDP 1.1应用的生命周期

表1:Series 40平台及S60平台所支持的Java技术

此外,基于Series 40平台的诺基亚6131 NFC手机和诺基亚6212 classic手机支持无接触通信API (JSR-257) 。

 

为何要创建Java™应用?

用Java™ ME实现你的应用理念,打开全球性广大市场。

 

Java ME是行业性技术,大部分的主流制造商都供应支持Java ME的系列终端。这意味着:除了能进入使用中的10亿台诺基亚终端所造就的巨大市场,你的应用还有机会进入全球差不多30亿台使用中的移动终端。

 

Java应用有进入这一市场的潜能,理由就是极高的用户接受力。消费用户接受力已经得到了Java ME所包括的强健的下载加安装机制所驱动,这反过来又促进了运营商对Java应用下载的支持。这类内置机制也意味着,你的知识产权将得到保护。

 

至于开发,大家很容易将自己的Java语言技能用于移动应用的创建。Java ME是基于大家所熟悉的Java™ Platform, Standard Edition (Java™ SE),你已经在用后者开发PC应用。即使你没有用过Java语言,你将发现,使用诺基亚论坛的许多资源,包括针对Java ME的培训课程和文档,还是非常容易学习的。

 

你或许已经听说,使用针对移动终端的Java技术可能会遇到API分化的问题— 终端与终端间存在APIs实现方面的微小差异。因为诺基亚已采用其平台方案在Series 40平台和S60平台上实现Java技术,当你为基于这些平台的终端进行开发时,你很少会遇到甚至不会遇到分化问题。此外,诺基亚已经在其最新版本的Series 40平台和S60平台上实现了移动服务架构(JSR‑248),这意味着,只要其他制造商也实现了这个JSR,一些关键性的Java APIs分化将得到限制。

 

不管你是开发游戏、个人效率增强应用、新闻和信息应用、企业应用,还是娱乐应用,Java技术和诺基亚平台都向你提供充分利用移动优势而需要用到的APIs。

 

应选用哪些开发工具?

诺基亚支持行业领先的Java™ IDEs:NetBeans和Eclipse。这两个IDEs提供了强健的工具,使大家能方便高效地创建优秀的Java应用。

NetBeans

无论你是Java™开发的新手,或者只是移动Java开发的新手,NetBeans都是开发Java应用的极佳工具。NetBeans提供了极为丰富的工具集,帮助大家成为有经验的Java开发者。它提供如可视化应用流规范和应用用户界面的拖曳式创建。此外,NetBeans提供的工具还支持使用SVGT,使大家能创建图形丰富的用户界面,省却了低级图形编码的开销。如欲开展移动Java开发,请选择广泛支持移动Java开发的NetBeans Mobility。

 

有关NetBeans Mobility的更多信息 »

Eclipse

 

也许你因为PC上的Java™应用开发而非常熟悉Eclipse IDE了。安装EclipseME后,你就拥有能对诺基亚移动终端上的MIDlets进行测试和打包的工具了。

 

请下载Eclipse »

请下载EclipseME »

 

我要一个SDK,哪一个才是正确的?

最新款的诺基亚终端要么是基于Series 40平台,要么就是基于S60平台。在每个平台内都有不同的editions和feature packs。Editions表示重大的功能更新,如从MIDP 1.x到MIDP 2.x。Feature packs则是在某个edition中所增加的一些改进,如添加新的JSRs或在某个现有JSR中对所支持的功能做一些改进。平台、edition, 及feature pack的每一个组合都有其对应的SDK。

 

如要确定你的终端所使用的是哪一个平台,哪一个edition,及哪一个feature pack,请查阅诺基亚论坛终端规范专页,并参阅技术规范中的“开发伙伴平台”章节。

 

一旦你确定了你的终端所使用的平台,你就可以下载对应的SDK。

 

请下载支持Java™开发的最新版S60平台SDKs »

请下载Series 40平台Java SDKs »

 

如果你才接触Java开发,你还需要一个Java™ Development Kit (JDK) — 可以是JDK 6,也可以是JDK 5.0。

 

请下载JDK »

 

我能在PC上构建一个应用,但如何让其运行于手机?

虽然你在PC上开发了Java™应用,但目标却是在某台诺基亚终端上运行。你仅需两步就能实现这个目的:

 

首先下载诺基亚PC套件,它提供了许多连接和同步选项。

 

请下载诺基亚PC套件 »

 

如你已经选择以NetBeans Mobility进行开发,现在你就可以在NetBeans中选用NetBeans开发模块将你的应用迁移到某台已直接连接到PC的终端。(打开你的工程属性查阅部署选项)。如果你使用的是另一个IDE,你可以使用PC套件中的“安装应用”选项。

 

各种工具齐备,如何起步?

所有工具都已齐备— IDE、用于连接的诺基亚PC套件,及对应于终端的正确SDK。如果你需要起步指导,诺基亚论坛可提供帮助。

 

首先请访问Java™ ME开发伙伴库。不管你是刚刚从事移动Java开发,还是一位有经验的移动Java开发者,Java™ ME开发伙伴库都是你为诺基亚终端构建Java应用时不可多得的参考资源。这个资源包中包括介绍、起步指南、教程,及S60平台或Series 40平台中所实现的Java技术的相关API信息。

 

请访问Java™ ME开发伙伴库 »

 

你也可以使用名为《以NetBeans起步》的screencast,其中介绍了如何找到并安装你以NetBeans起步所需的工具,同时也指导你一步一步地创建、build, 测试、打包,及部署你的第一个移动Java应用。

 

请下载《以NetBeans起步》screencast »

 

你还可以利用诺基亚论坛上大量的源代码范例之一开始应用开发。

 

Java 代码范例 »

 

现在你就能构建你的首个Java应用了,你还能在快速成长的移动Java应用市场上找到自己的位置。

 

我遇到了一些问题。如何找到答案?

开发过程中,一开始可能什么都不正常。也许你无法充分理解某个API,也许发现自己的应用不能如所期望地运行。别担心,诺基亚论坛的众多资源将帮助你找到答案。

 

首先请到诺基亚论坛维基百科上看看。这是诺基亚所支持的巨大信息仓库。这一综合性Java™技术专区提供了Java技术的背景信息、指导信息、源代码范例,及已知问题的文档归集等。

 

请访问诺基亚论坛维基百科的Java™分类 »

 

knowledgebase如果你的应用表现非如所望,诺基亚论坛中的诺基亚论坛知识库也许是你的救星。该知识库提供了经过诺基亚论坛技术咨询团队鉴证的详细的已知问题和技术解决方案。当你的Java应用遇到意想不到的问题时,定期更新的知识库可成为你的首个靠泊港。

 

请访问诺基亚论坛知识库 »

 

discussion board如果解答仍然不能解决问题,请到诺基亚论坛讨论区寻求200多万诺基亚论坛会员开发伙伴的知识和专业技能帮助。首先在论坛中搜寻,看看你的问题是否曾被讨论过。如果还没有人提出过这类问题,请贴出你的问题看看是否有人会提供解决方案。

 

请访问诺基亚论坛开发伙伴讨论区 »

 

维基百科、知识库,和开发伙伴讨论区,帮助开发伙伴们找到解决方案。然而,如果你所从事的移动Java开发比较高级,你也许需要利用诺基亚论坛按例付费的技术支持服务。

 

有关技术支持的更多信息 »

 

如何测试Java™应用?

在Series 40平台和S60平台上对Java™应用进行测试是很容易的。每一个平台SDK都有一个终端模拟器,它让你能在PC上对你的应用进行测试,检查其运行情况,就好像在终端上运行一样。此外,因为诺基亚终端是基于这些平台,你能确信:你的应用在基于同一个平台edition和feature pack的所有终端上将有同样的表现。

 

为确认自己的应用运行正常,你还应该在目标终端上进行测试。诺基亚论坛理解,维持一系列合适的终端将开销不菲,因此我们提供了两种远程终端接入服务供大家测试及演示内容和应用。这些服务是:

 

  • 远程终端接入(Remote Device Access, RDA) — 由诺基亚主持并对所有诺基亚论坛会员开放。这一服务提供了对一系列S60终端的免费接入使用。
  • 诺基亚论坛开发伙伴虚拟实验室(Virtual Developer Lab, VDL) — 由DeviceAnywhere主持。这一服务提供对一系列S60终端和Series 40终端的接入使用。这一收费服务向所有诺基亚论坛会员开放。

有关RDA和诺基亚论坛VDL的更多信息 »

 

应用完成了,如何销售?

一旦创建了自己的移动Java™应用,你一定不希望只是孤芳自赏。你可以通过许多渠道向差不多10亿位拥有诺基亚手机的用户推广自己的应用。

 

许多销售渠道要求应用必须通过Java Verified™计划的测试和认证。这一行业认可计划的认证让你和你的客户确信你的应用通过了由移动Java专家所建立的行业标准测试。

 

有关Java Verified™计划的更多信息 »

 

诺基亚论坛就推广应用向你提供大量的参考意见。不管你的应用是全球性的、地区性的,还是仅仅面向本地的,诺基亚论坛都能帮助你找到合适的渠道。

 

走向市场方面的更多信息 »

 

还要更多!

诺基亚论坛提供更多的资源,帮助大家开发Java™应用。

 

诺基亚论坛定期出版白皮书、教程、screencasts,及其他一些资源,提供移动Java应用创建方面深入详尽的宝贵信息。

 

Java文档大全 »

 

一旦你开发了一款出色的Java应用,你当然希望它能运行于尽可能多的终端上。请浏览诺基亚论坛有关Series 40平台和S60平台的各个专区,了解如何将你的应用推广到广阔的市场。

 

有关S60平台的更多信息 »

有关Series 40平台的更多信息 »

 

诺基亚还支持另两种现存的Java技术:NFC及诺基亚的SNAP Mobile。

 

Series 40 诺基亚6212 NFC SDK让你所创建的应用其性能恰如使用NFC技术的智能卡。

 

有关NFC的更多信息 »

有关Series 40诺基亚6212 NFC SDK的更多信息 »

 

如果你正在创作游戏,你也许希望利用SNAP Mobile SDK。诺基亚的SNAP Mobile是基于Java™语言的端到端交钥匙解决方案,它让大家能创建可通过社区服务框架进行游戏的联网移动游戏。

 

有关SNAP Mobile的更多信息 »

有关SNAP Mobile SDK的更多信息 »

支持Java技术的诺基亚工具和SDKs大全»