Java – J2ME’s extra annoying HTTP permission prompt

httpjava-memidletmidp

Some phones only prompt the user for permission the first time a connection is made. Others pop up the permission prompt whenever the MIDlet attempts to make a HTTP connection! What are the options if we want to suppress the prompt?

Can we sign the JAR using only one CA (Certificate Authority) and have it work on all devices? Do we have to pay for a signature on every release?

Is it an option to create our own CA certificate and tell our customers to install it on there device?

Alternatively, it seems that plain socket connections do not suffer so. Is there a free implementation of HTTP on top of TCP for J2ME?

Best Answer

Some phones allow you to change the setting manually to set once per session. Or try adding

MIDlet-Permissions: javax.microedition.io.connector.http

to the jad file.

Yes, if the build is signed with the root certificate that is available on most devices, Verisign Class 3 certificate, for example

As a security measure, devices don't allow you to install your own certificates, even if it is obtained from a CA.

Plain socket connections may add overhead in processing of the data in the client side. Also some security issues are also involved.