Nokia Java Development: Difference between revisions
No edit summary |
mNo edit summary |
||
Line 1: | Line 1: | ||
This is part of the [[Nokia Phone Development]] section. | |||
== Java Development == | == Java Development == |
Revision as of 03:22, 25 March 2007
This is part of the Nokia Phone Development section.
Java Development
Tools
To build, debug and deploy applications on the Nokia phones, you must have first install (in this order) the following:
- J2SE v1.4.2_13 SDK -- Install this in the default location, or it will break the SDK.
- Eclipse 3.2.1 -- Eclipse will crash, save your work frequently. Also, make sure to use Java 1.4 to build or emulation will fail.
- Carbide.j 1.5 -- Get the SN from forum.nokia.com. It will be self-explanatory.
- Nokia PC Suite 6.80.21 -- Comes with Carbide.j. Newer versions will break deployment.
- S60 3rd Ed SDK for MIDP -- Only needed for on-device debugging (BT,WiFi). Sadly, it's kinda buggy.
Tips
If emulation isn't working, you should check to see if Eclipse is using Java 1.4 to compile. If known working apps aren't working on the phone, it's most likely the wrong compiler. (Window > Preferences > Java > Compiler > Compiler compliance level should be 1.4)
If deployment isn't working, you probably updated the Nokia PC Suite. Uninstall the entire PC suite and all Nokia connectivity drivers. Firmware updates seem to be OK, but unless you have a reason to update firmware, stay away.
If the Nokia phone is running as a Bluetooth client, it has to do a device inquiry, it does not support connecting to a known service on a known device. This is a limitation of the implementation of JavaME on the phones, but should work in Symbian.
JavaME apps cannot run as a background process. They can be put into the background through a PushRegistry command that essentially stops them. They can then be restarted via a timer or incoming network process. True background apps can only be done in Symbian.
Make sure you hit the refresh button before you generate the new JAD/JAR files, or you may get stale files sent to the phone.