欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

J2ME Polish 全攻略之入门

程序员文章站 2022-03-09 21:09:21
...

爬虫工作室

文章出处 3G视线

连接 : http://javaeye.5d6d.com/thread-234-1-1.html

J2ME Polish 全攻略之入门

在看这篇文章之前,我希望读者先浏览漫游 J2ME Polish--比较详细的文档.doc 这篇文章

内容简介

J2ME Polish现在很火,很多手机软件开发商都在采用这东西进行二次开发。然后很可惜,网络上关于这方面的中文比较少,所以我根据我学习的经过,整理成文章,希望对初学着以及爱好者有所帮助。

1.到官方http://www.j2mepolish.org/ 上下载安装包,现在最新版本是2.0 R4版本,本人建议安装1.2.4版本,因为2.0R4版本可能存在一些不兼容以及一些bug。本人用2.0R4版本的时候,有些例子并不能通过测试

运行cmd,然后输入java –jar D:"J2ME Polish.jar即可出现提示窗口,然后点下一步,就ok了。

J2ME Polish 全攻略之入门
            
    
    博客分类: J2ME AntXML软件测试CSSUI <!---->

上面的目录结构很清晰。

其中最import是系统引入的包,其中包括一个bulid的包,以及其他一些,midp等规范包。

Samples 是例子文件,我的版本里面只有两个例子,一个是menu,描述的是,采用J2ME Polish GUI,创建适合各个平台的统一外观的包,基于CSS设计的。是UI设计的典范,可以具体研究。 Sysinfo是一个系统信息的测试例子,涵盖了几乎所有平台上对jcp规范支持等测试信息,是我们开发程序中必须要用到的知识。

Doc是文档,此文档暂没有中文。我们学习起来比较吃力

ApiJ2ME Polish提供给开发人员使用的公共接口

Bin一些可执行文件

其中readme.txt文件,关于项目的一些描述

LICENSE.txt 版权信息,作为商业开发者,一定要看哦

对于*目录下的xml文件,基本上都是J2ME Polish的描述文件,很重要的哦。是研究它的最直接的资料,可惜,我也是刚学习,没有深入去了解它

其中groups.xml定义了不同的平台下面的东西,比如s40s60s80390,等api

Vendors.xml定义了厂商的规范,特性等,比如键值的定义啊。J2ME Polish处理键值事件的时候主要是对这些规范进行预编译,所以适合很多平台,厂商。

Devices.xml是对各个平台支持规范程度的描述,此文件包含了很多个平台支持描述。

上面的所有配置都是基于xml了。可以自己扩展,api,配置,以及平台

三.运行例子Menu SysInfo

2.查看bulid.xml文件,看看它做了些说明手机,让我们的工作这么轻松愉快

由于贴xml文件,word并没有进行格式化,所以我这里重点介绍下。

<project name="enough-j2mepolish-example" default="j2mepolish">

这段是说,建立一个project默认执行的targetj2mepolish

<property name="wtk.home" , value="D:"WTK22" />

WTK的安装目录

<property name="polish.home", value="D:"Program Files"J2ME-Polish" />

J2ME Polish 的安装目录

<taskdef name="j2mepolish"

classname="de.enough.polish.ant.PolishTask"

classpath="${polish.home}/import/enough-j2mepolish-build.jarJ2ME Polish 全攻略之入门
            
    
    博客分类: J2ME AntXML软件测试CSSUI " border="0">{polish.home}/import/jdom.jarJ2ME Polish 全攻略之入门
            
    
    博客分类: J2ME AntXML软件测试CSSUI " border="0">{polish.home}/import/proguard.jarJ2ME Polish 全攻略之入门
            
    
    博客分类: J2ME AntXML软件测试CSSUI " border="0">{polish.home}/yguard-lib.jarJ2ME Polish 全攻略之入门
            
    
    博客分类: J2ME AntXML软件测试CSSUI {wtk.home}/wtklib/kenv.zip"/>

这个很重要,定义说。执行这个targer Task,这里是指执行de.enough.polish.ant.PolishTask这个类。具体可以看源代码,看看里面做了些说明手脚

<obfuscator name="ProGuard" useDefaultPackage="true" unless="test" >

<!--

You can set additional parameters here, e.g.:

<parameter name="optimize" value="false" />

-->

</obfuscator>

这个用来打包用的,采用ProGuard混淆器

其他的自己研究。

我们现在来看看,运行build.xml后生成了些什么呢。不看不知道,一看吓一跳,

build的文件夹下面,我发现了好多文件,全部是对于平台不同的资源源代码。原来,J2ME-Polish的原理是,通过ant build的扩展,然后通过自己的一套API,把用户的代码转换成对应各个平台的源代码,然后编译,打包。原理虽然简单,但是这一套却是要花很多功夫ide哦。我现在开始有点佩服J2ME Polish的创意了。也难怪,我的主管说J2ME Polish是个好东西,好以后继续学习J2ME Polish的源代码,继续探讨。

上面的例子是基于J2ME – Polish GUI的,现在的例子是不import任何的J2ME Polish MIDP相关的API,这样例子对应需要开发。这个例子更简单,按照我刚才所写的方法办即可。

顺便介绍下这个例子,这个例子对应开发手机软件来说,也是很有用的。里面包含了对JSR规范支持的测试,已经屏幕,按键等相关的测试,很有用。