FAQ

Installation

Q: If I extract the downloaded jar-file I don't find the described tools. What happened?

Technical

Q: What is this splash screen about and how can I deactivate it?

Q: How much memory does J2ME Polish need?

Q: J2ME Polish seems to copy classes into my application - how can I prevent this?

Q: What third party software is used by J2ME Polish?

Q: Why can't I use a specific API for a specific phone?

Licensing

Q: What happens when J2ME Polish will not be developed anymore?

Q: Can I combine several Single Licenses?

Bugs

Q: I think I have found a bug, what should I do?

Contribute

Q: I like this project, how can I contribute?

Features

Q: I need a feature, when will you implement it?

Help

Q: My screen title is not designed properly, why?

Q: My menubar is not designed properly, even though I use the "menu" fullscreen mode. What's wrong?

Q: Where are the mailing lists?

Q: I'm a bit lost - how should I start using J2ME Polish?

J2ME Polish

Q: What should the name "J2ME Polish" mean?

Software Patents

Q: What about software patents?

Installation

Q: If I extract the downloaded jar-file I don't find the described tools. What happened?

A: You are not supposed to extract the jar file - please start the installer by calling java -jar j2mepolish-[version].jar from the command-line (substitute [version] with the actual version-number). On Windows and Mac OS X it is usually sufficient to double-click the downloaded jar-file to start the installer.

Technical

Q: What is this splash screen about and how can I deactivate it?

A: The "powered by J2ME Polish" splash screen is shown for maximum 1 second in applications that do use the J2ME Polish UI and are not licensed. To deactivate it just buy a license and store your license key in your project's root directory. The license is free for Open Source projects by the way - just send an email to j2mepolish@enough.de detailing your project and its Open Source licensing scheme to start the process.

Q: How much memory does J2ME Polish need?

A: J2ME Polish itself is a build-tool with an optional GUI, some helper classes and a MIDP/2.0 compatible game-engine.
If you just use the build-tool, no additional memory is used.
If you want to use the GUI the additional needed memory depends on what GUI features you actually use. The minimum library footprint starts around 50 kb (after obfuscation). For a full fledged application calculate up to 100 kb for the GUI. Modern devices have a maximum jar size of several MBs, so the memory used by the GUI is more or less negligable.
The game-engine uses 5 to 6 kb.

Q: J2ME Polish seems to copy classes into my application - how can I prevent this?

A: J2ME Polish adds its utility classes and all its GUI classes (if the GUI is used) automatically to each application. The obfuscation step is removing all unnecessary and unused classes, so don't worry about this.

Q: What third party software is used by J2ME Polish?

A: J2ME Polish uses following software:

  • Ant is the basis for the build tools and is not included in the distribution.
  • JDom is used for XML processing.
  • ProGuard is the default obfuscator.
  • RetroGuard is another obfuscator which is included in J2ME Polish.
  • IzPack is great tool for creating installers.

Q: Why can't I use a specific API on a specific phone?

A: Real world phones only support a limited number of APIs. While few APIs can theoretically be embedded into devices that do not support them (like the webservice APIs), most if not all APIs require support of and integration into the operating system. So if you require the JSR 082 Bluetooth APIs for your app, you can only target devices that support this API.

Licensing

Q: What happens when J2ME Polish will not be developed anymore?

A: When the development on J2ME Polish will be halted, Enough Software will license the full product under the GNU Lesser General Public License, allowing full commercial usage without limitations. Thus Enough Software offers a very high investment security!

Q: Can I combine several Single Licenses?

A: Yes, Single Licenses can be combined, so if you use J2ME Polish for more than one application, you do not need to upgrade to the Enterprise License or use the Runtime License instead.

Bugs

Q: I think I have found a bug, what should I do?

A: Please tell me about it at j2mepolish@enough.de. You might also want to file a bug-report. J2ME Polish is currently in the "early bird" phase, so there are still some limitations.

Contribute

Q: I like this project, how can I contribute?

A: There are many ways how you can contribute:

  • Finding bugs
  • Translating the documentation
  • Enhancing or extending J2ME Polish
  • Creating a design with J2ME Polish

When you'd like to do anything of it, please get in touch with me at j2mepolish@enough.de.

Q: I fixed some stuff - what now?

A: Gee, cheers! Please send it to me at j2mepolish@enough.de. Be aware that I use J2ME Polish commercially as well, though.

Features

Q: I need a feature, when will you implement it?

A: Please have a look at the roadmap. When you cannot find the needed feature, please tell us about it at j2mepolish@enough.de. 

Help

Q: My screen title is not designed properly, why?

A: You can design the title in following circumstances:

  • you target a MIDP 1.0 phone, or
  • you are activating a fullscreen mode in your <build> element of you build.xml script by specifying fullscreen="yes" or fullscreen="menu", or
  • you are targeting a MIDP 2.0 phone and set the "polish.usePolishTitle" preprocessing variable to "true" in your build.xml script:
    <variable name="polish.usePolishTitle" value="true" />

MIDP 2.0 phones support a "native" title. On Nokia phones this title is set above of the actual Canvas area, for example. That's why J2ME Polish is using such native title by default.
You can end up with a native title even when you use the "menu" fullscreen mode and target a device with unknown softkey events. Please refer to the next question for details.

A: This is usually due to one of the following reasons:

  • you are targeting a generic phone (like "Generic/midp2")
  • you are targeting a phone for which the softkey values are unknown

Softkey events are not standardized and also not all phones do trigger key events when a softkey is pressed. Therefore, J2ME Polish uses the "native" menu for best compatibility. The menubar can only be designed when you target a device that has known softkeys, e.g. all Nokia or Motorola phones. Please refer to the device database for getting to know if your target device has known softkeys. You can also specify the softkeys yourself by setting the "key.LeftSoftKey" and "key.RightSoftKey" capabilites in either devices.xml or custom-devices.xml.

Q: Where are the mailing lists?

A: Here:

  • users: please join the users@j2mepolish.org-list.
    In this list users can discuss their problems. The developers of J2ME Polish will monitor the discussions and help out!
  • newbies: please join the newbies@j2mepolish.org -list and discuss how to start with J2ME Polish and mobile development in general.
  • developers: please join the internal@j2mepolish.org-list.
    This is for the developers of J2ME Polish.

 

Q: I'm a bit lost - how should I start using J2ME Polish?

A: You should start by reading the introduction first.
I suggest to check out the provided sample-application in the next step. Play a bit around with the design (which is defined in the "resources/polish.css" file) and in the source-code.
Maybe you can find some more ideas in the collection of how-tos.
You should then be ready to check out the full documention.

J2ME Polish

Q: What should the name "J2ME Polish" mean?

A: J2ME Polish should mean "turtle wax", at least that's what slashdot reader tod suggests. The name can be confusing really. It has nothing to do with Poland or the language spoken there, rather it should imply that you can polish up your applications with J2ME Polish.

Software Patents

Q: What about software patents?

A: Software patents are only good for lawyers and major companies. Please help stopping this madness:
http://www.ffii.org.