首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2ME开发 >

j2mepolish中obfuscator(搅混器)的应用

2012-08-30 
j2mepolish中obfuscator(混淆器)的应用[size14]我们知道在j2mepolish带有一个ant构件工具,且有一个build.

j2mepolish中obfuscator(混淆器)的应用
       [size=14]我们知道在j2mepolish带有一个ant构件工具,且有一个build.xml文件。在build.xml里边定义了一个工程的编译(compile)、混淆(obfuscate)、打包(package).....等命令。所以很多人都喜欢用j2mepolish来的ant来管理一个j2me工程的编译打包工作,即使他们没用到polish, 避免了用ant时写build文件的麻烦。

build.xml:



         现在我主要谈谈polish中的obfuscator(混淆器)的应用。我们知道J2ME的应用开发极大地受到了设备的限制。通常可下载类应用限制在几百K左右,设备本身限制在64k、100k、128k等不等。尽管现在的手机的内存可以达到1G(有些可以用内存卡),但一个应用程序的大小还是尽可能小好,因为这可能影响程序的性能。

下边是网上关于j2me应用程序瘦身的办法:


其主要属性与元素:
属性name: 指定当前obfuscator的名称,其中"ProGuard"是默认的,如果你想用其的的obfuscator,只要在build.xml中指定相应的classPath就可以了。

元素<keep/>: 保留你不想参与混淆的类,留给程序动态加载。这个很好用,当你混淆某个工程后,运行时却发现有部分的类找不到,显示java.lang.ClassNotFoundException, 这时你可以用<keep/>把这个类保留下来,给程序动态加载。(我用polish混淆时碰过这情况,不知用其它混淆时(如JB)有没有??^_^)

元素<parameter/>: 当你想合用第三方的混淆器时,指定第三方混淆的配置。还有的是,ProGuard 3.x 提供了一个字节代码优化器(默认是false),当你用ProGuard混淆器时可以用此元素来优化代码:


如果你想几个obfuscator一起用,也可以,只要连着写几个<obfuscator/>就可以了。
[/size]

热点排行