java-mepermissionsmidp-2.0jsr75

Signed J2me app hanging at first start


In my j2me app that is signed by veriSign, has problem in accepting the always or yes permissions the time it has to perform PIM.getInstance().openPIMList(..) action.

When my app perform below line of code very first time of it's installation it hangs and doesn't show up the main screen rather a black background hanged screen. When I exit and restart the application it runs normally without any problem even if I delete it and put it back again and runs fine, except I delete and restart the phone and try to run it again it shows the same problem I described above.

My code of line that causes to ask permissions is here that actually also causes the problem. One more thing this error only occurs on specific phones which actually allow ALWAYS permission on start.

I am checking it over Nokia X2-05 and it shows problem but on Nokia C3-02 it doesn't as it doesn't allow ALWAYS permission automatically on start of app.

private void permissionSettings() throws PIMException {
       PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_WRITE);
}

Above is code snippet that hangs at first start.


Solution

  • It sounds like a bug on the handset to me, the TCK tests used to verify j2me libraries are pretty weak so lots of bugs like this find their way through.

    It seems that the key is in the permissions, so I would try and play around in this area. Make sure you have the right permissions set in the .jad (before signing), if you can get hold of one try to sign with a certificate in a different security domain or certificate, try changing the permission level before running the applet.

    I would expect that you'll only be able to work around the problem, so rather than suggest something specific I would be varying things within those areas.