of 'Ask first time' for network connections, but signed MIDlets can use
'Always allowed', so that users are never prompted again.
Signing improves overall security and usability of the application,
therefore it is a good recommendation to go for it, even it involves some
bureaucracy and lengthy processes. For more information please refer to
the Java Verified program.
9.3.5 Consider OTA Provisioning
Provisioning applications is an important part of the application lifecycle
and equally important for a good user experience. Simple provisioning
can be achieved with little effort with some server-side cooperation. For
example, over-the-air (OTA) installation with checking for updates can
be implemented with relatively little effort.
For more streamlined provisioning, consider using JSR-124 Java EE
Client Provisioning Specification which offers a specification for a server-
side provisioning service. With built-in OTA support and pluggable
application provisioning schemes, support for automatic deployment
bundle selection based on device, and so on,
it appears to offer a
complete provisioning solution.
9.3.6 Encrypt Sensitive Data
All network communications, and particularly wireless communications,
may be exposed to public networks and therefore there is the potential for
a malicious third party to intercept or record data. In some cases, this is not
a major concern - e.g. downloading web pages or images available on a
public web address. However, for any sensitive data such as passwords,
financial transactions, and so on, we should use secure means for data
transfer, such as HTTPS or secure sockets. It is important to note that
secure communications have much higher computational requirements
than non-encrypted communications. Therefore it is advisable to use
secure communications only when necessary.
9.4 General Tips for Symbian OS
So far in this chapter, we have covered various best practices for devel-
opment in Java ME. Other best practices for Java ME could also apply.
However, this topic is specifically about Java ME on Symbian OS and
therefore we now look at two important guidelines that are specific to
Java ME on Symbian OS.
9.4.1 Be a Good Symbian OS Citizen
Symbian OS is an open platform that hosts various run-time environments
and can run multiple applications simultaneously. With openness comes