Friday May 29, 2009

Each emulator has 2 instances by default in Java ME SDK. For example DefaultCldcPhone has 2 instances DefaultCldcPhone1 and DefaultCldcPhone2. Developers ussualy don't need to run more than 2 instances simultaneously, but if it's necessary you can easily add new instances.

  1. go to toolkit-lib/process/device-manager/device-adapter/DefaultCldcPhone and copy file 2.bean into 3.bean, 4.bean etc.
  2. edit new bean to contain name of DefaultCldcPhone3 and link to DefaultCldcPhone3.properties
  3. go to toolkit-lib/process/device-manager/conf and copy DefaultCldcPhone.properties into DefaultCldcPhone3.properties
  4. stop device-manager and remove <userhome>/javame-sdk/3.0/work
  5. start again device-manager
Now you should have more instance of the same emulator. 

 

 

Thursday May 28, 2009

JavaOne starts in few days and we are getting ready our demos for java me sdk session on thursday June 4th 9.30 am. It is exciting and I hope it will be exciting for audience as well. This time we will concentrate on working with real handsets. How to deploy applications, do debugging or device profiling directly on the phone with (almost) only one mouse click. There will be also a small bonus for Mac and Linux users. 

Monday May 25, 2009

Java ME SDK 3.0 supports offline profiling. Data is collected during the emulation session. After you close the emulator a profiler data snapshot is written to a .prof file which you can load and view in the SDK.

Since last Friday it is possible to load and view Java ME SDK profiler file also in VisualVM 1.1. VisualVM is a tool to monitor and troubleshoot Java applications. For more information about VisualVM visit its homepage.

How to view Java ME SDK profiler file in VisualVM? It's easy. Everything you have to do is to install Java ME Profiler Snapshot Viewer module from VisualVM update center.

  1. Start VisualVM.
  2. Open Plugins manager from Tools->Plugins menu.

    Tools->Plugins menu

  3. In Available Plugins tab select Java ME Profiler Snapshot Viewer and click Install button.

    VisualVM Update Center


When the module is installed, new action Import Java ME SDK Snapshot... is added to the application File menu.

Import Java ME SDK Snapshot...

Java ME SDK profiler file can be opened and shown in VisualVM by this action. Default location of Java ME SDK profiler file is <user_home>/javame-sdk/3.0/work/<device_number>/data.prof.

Tuesday May 05, 2009

We've made a plugin for phoneME developers which helps to integrate their custom builds into Java ME SDK. PhoneME plugin is available on sdk autoupdate. A short notice will popup automatically when sdk is started or go to Tools -> Plugins and look for Java ME SDK 3 binding to PhoneME MR4. Choose to install plugin if you are phoneME developer and you're building your own virtual machine (VM). The plugin itself doesn't contain phoneME VM it's expected that developer will install the one which he build himself. Instructions are provided with the plugin. Here they are summarized with some more details added:

First, install phoneME plugin from autoupdate. Two additional emulator instances named DefaultPhoneMEPhone1 and DefaultPhoneMEPhone2 will be created in sdk. They are bound to new runtime which can be found in SDK_INSTALL_DIR/runtimes/phoneME Although if you look there the runtime is almost empty. Emulator can't run with default phoneME runtime you will need to use latest phoneME Feature release MR4 and modify your build in order to use jmesdk-odt.jar library delivered in plugin. Following are instructions how to update your phoneME makefile:

  1. Add variable: SDK_INSTALL_DIR=<path-to-javame-sdk-install-dir>
  2. Set following switches for midp component: PRECOMPILED_ODD=true and ODD_JAR=$(SDK_INSTALL_DIR)/runtimes/phoneME/jmesdk-odt.jar
  3. Add install rule which will install phoneME runtime into sdk:  cp -r $(BUILD_OUTPUT_DIR)/midp/SDK/runtimes/cldc-hi/* $(SDK_INSTALL_DIR)/runtimes/phoneME

Now phoneME emulator can be launched with your customized phoneME runtime. Congratulations ;) It can be used from a command line or from Java ME SDK User Interface (UI). If you use UI both phoneME emulators appear in the device selector under a node named Phone ME Feature. If you prefer a command line, a device name must be specified through an option: -Xdevice:

Here is an example:

emulator.exe -Xdescriptor:../apps/Demos/dist/Demos.jad -Xdevice:DefaultPhoneMEPhone1

Here is also basic troubleshooting:

  1. Stop device manager
  2. Delete work directory in Java ME SDK users directory <windows-userhome>/javame-sdk/3.0/work
  3. Start <javame_sdk_install_dir>/bin/device-manager.exe. New work directory will be recreated.

Thursday Apr 30, 2009

There is JVM for Windows Mobile device bundled with Java ME SDK. Have a look at installWinMobile.pdf in SDK doc folder. Pdf says how to install and use it on device and also with Windows Mobile Emulator. This jvm is for evaluation purposes only which means that you can deploy on it only from SDK.


Wednesday Apr 29, 2009

I would like to highlight an important behavior of  Java ME SDK here which might be useful to any developer. You don't need to exit from emulator fully, exit only your MIDlet and redeploy new one into already running emulator. This will increase your productivity because of saving time on emulator restarts. I use it always and it's real help.
Unfortunately this feature stays often undiscovered. Give it a try ...
I usually run emulator once without specifying a MIDlet - only to open AMS.

emulator.exe -Xjam

and then deploy my application again and again without exiting emulator - just exiting from a MIDlet.

emulator.exe -Xdescriptor:..\apps\Demos\dist\Demos.jad

Several things happen behind the scenes. MIDlet is deployed, launched and after exit it is removed. It works from command line and from UI and for real device as well.

Monday Apr 27, 2009

 

Just a day after Java ME SDK 3.0 release we decided to have the first meeting about features for next Java ME SDK version. It was a nice sunny day in Prague and we were sitting on the grass in front of our building to get fresh ideas on the fresh air. We put together long list of enhancements and new features but we would also like to know your opinion. Do you miss some feature? Do you think something should be improved? Share your mind with us, we will very appreciate it.

From left to right: Radko, Martin, Tomas, Ondra, Lubo, Igor and Pavel behind the photo camera.

Friday Apr 24, 2009

Java ME SDK 3.0 integrates CLDC, CDC and Blu-ray Disc Java (BD-J) technology into one SDK. BD-J is a new member of Java ME SDK family ... so it is the right time to try it and create your first Blu-ray Disc Application. How to do it? It's easy, just follow this tutorial.

Thursday Apr 23, 2009

We've got some time today to celebrate our release finally. Besides engineering many thanks goes to our quality engineering team for testing, Netbeans core, profiler and mobility team for support, cldc engineering team and all other who contributed and helped to make it happen.

Sending piece of cake to all of them at least virtually ...


Wednesday Apr 22, 2009

A nice article about Java ME SDK 3.0 was published on DevX.com. The article is discussing Java ME SDK 3.0 Early Access release but what was written is still valid for the final version released last week.


Monday Apr 20, 2009

Java ME SDK fails to start on Vista 64-bit with 64-bit JRE. This can be workarounded by using 32-bit JRE on 64-bit Vista. So far, it looks that workaround works well.

When JME SDK device manager starts for the first time it creates emulator instances under <user_home>/javame-sdk/3.0/work. If something bad happens to instances settings and emulator does not start the first aid is:

  1. stop device manager
  2. delete working directory <user_home>/javame-sdk
  3. launch <sdk_install_dir>/bin/device-manager.exe
Emulator instances will be recreated in its default state.

Thursday Apr 16, 2009

We are going to present Java ME SDK at technical session at JavaOne this year.

  Title: A Closer Look at the Java™ Platform, Micro Edition (Java ME Platform) SDK 3.0
  Date: 04-JUN-09
  Time: 09:30 AM-10:30 AM
  Venue: Moscone
  Room: Esplanade 303

Please feel free to drop by and discover some of the advanced features of our new JME SDK. I'm pleased to announce that our partner Sony Ericsson will be there. Sony Ericcson will show off their customization of the device adapter for their Java-enabled phones with some cool demos of CPU profiling, debugging, device explorer and online device database.

Thursday Apr 09, 2009

Java ME SDK team is happy to announce availability of Java ME Platform SDK 3.0.

Java ME SDK 3.0 is the successor to the popular Java Wireless Toolkit 2.5.2 and Java Toolkit 1.0 for CDC. It provides device emulation, a standalone development environment and a set of utilities for rapid development of Java ME applications.Users will get all-in-one for cldc/midp, cdc and BD-J development.

Among new features are:

  • on-device deployment and on-device debugging
  • CLDC runtime based on PhoneME Feature
  • optimized MSA 1.1
  • new development environment based on Netbeans platform
  • integrated profiler and network monitor
  • lightweight UI Toolkit (LWUIT) support
  • device database WURFL search tool
  • BD-J support
  • Windows Mobile Java VM included

Read more details on Java ME Platform SDK 3.0 page.

Submitt questions to other users in Java ME SDK forum.  

This blog copyright 2009 by Radko Najman