×

Discussion Board

Results 1 to 4 of 4
  1. #1
    Registered User
    Join Date
    Dec 2004
    Posts
    23

    Question OTA, Works in emulator not on phone, what am I doing wrong?

    Hi,

    I've developed a J2ME application using NB 4.0 and the corresponding Mobility Pack. Now I'm trying to get the application to be installable thru a webserver. I've put everything on a website accessible by both a webbrowser as well as my mobile phone and the WTK emulator included in NB 4.0 Mobility Pack.
    Downloading the application into a mobile phone works with the default emulator of the WTK 2.2 as well as the Nokia and Sony Ericcson emulators, I don't know about the Siemens or Blackberry, haven't tried it.

    But I haven't been able to freshly download and install a MIDlet by browsing to it with a real mobile phone. When I browse to the .JAD file and select the link, the JAD-file is downloaded and processed. I get a warning that the application-source is unknown and whether or not I want to continue. When I select "Yes" I get to see the name of the MIDlet suite, its version, size etc. After I accept the actual JAR is downloaded, afterwhich it is started and I get an "Application Error" when it is started by the JAM. (No clue as to what the error might be).
    When I try to download the application again I get the message that it is already available on the mobile and whether or not I want to replace it. "Yes" or "No" to this question leads to the same error. I can't find the application anywhere on the phone though.

    But when I for example on my Nokia 6230, use Nokia's PC Suite to install the same application, the application starts up fine. And once I've installed the MIDlet on the phone using eg Nokia PC Suite, updates through a download from the web seem to work without problems.

    As said before, the application installs and runs fine when using the WTK's emulator or the emulators from Nokia or Sony Ericcson, only the real phones don't work.

    Any hints as to how to solve this are highly appreciated. I've tried on a Nokia 6230, 6600 and a Sony Ericcson P900.

    The application is a CLDC 1.1 / MIDP 2.0 compliant application.

    The JAD's contents:

    MIDlet-1: MyMidlet,,com.test.MyMidlet
    MIDlet-Jar-Size: 29364
    MIDlet-Jar-URL: http://XXX/MyMidlet.jar
    MIDlet-Name: MyMidletSuite
    MIDlet-Permissions: javax.microedition.io.Connector.http
    MIDlet-Permissions-Opt: javax.microedition.io.Connector.sms, javax.microedition.io.Connector.socket, javax.wireless.messaging.sms.receive
    MIDlet-Vendor: Iwan Eising
    MIDlet-Version: 0.9.100
    MicroEdition-Configuration: CLDC-1.1
    MicroEdition-Profile: MIDP-2.0

    (The exact URL is intentionally blanked-out.)

    Iwan

  2. #2
    Registered User
    Join Date
    May 2003
    Posts
    47
    i had similar problems downloading via OTA (rather, my Nokia 6600 shut down when I started my Midlet).My midlet worked well on emulators but OTA failed, although i never tried the Nokia PC suite. While I couldnt diagonise the problem, I started with a simple HelloWorld Midlet and slowly put my Midlet on. I discovered that my Application was looking for a startup logo image which was in /res folder. Somehow, upon a fresh download, JAM did not recognize the /res directory.
    overall, there are two things you should watch for - amount of runtime memory and exception handling. i have noticed the phones behaving abruptly while handling exceptions.

  3. #3
    Registered User
    Join Date
    Dec 2004
    Posts
    23
    Thanks for the pointer, I tried removing anything that was more than just a HelloWorld midlet right away so to speak a 'slimmed down version' of the application, just to test it out, but I get the same problem.

    Now the only thing I can think of is that the MIDlet Suite is not signed, but I'm not aware of that that is required.

    Any other ideas anybody?

    BTW: This is the HelloWorld midlet I'm using now:

    public class HelloWorld
    extends MIDlet
    implements CommandListener {

    private Command exitCommand; // The exit command
    private Display display; // The display for this MIDlet

    public HelloWorld() {
    display = Display.getDisplay(this);
    exitCommand = new Command("Exit",
    Command.SCREEN, 2);
    }

    public void startApp() {
    TextBox t =
    new TextBox("HelloWorld", "Hello Everybody", 256, 0);

    t.addCommand(exitCommand);
    t.setCommandListener(this);

    display.setCurrent(t);
    }

    public void pauseApp() { }

    public void destroyApp(boolean unconditional) { }

    public void commandAction(Command c, Displayable s) {
    if (c == exitCommand) {
    destroyApp(false);
    notifyDestroyed();
    }
    }
    }

    Iwan

  4. #4
    Regular Contributor
    Join Date
    Mar 2003
    Posts
    87
    Make sure it's not a problem with your service provider, we've had situations where one network won't allow the OTA for a particular phone.

    Good luck.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
×