views:

295

answers:

4

Edited on April 29th, content changed

Hello everyone,

I recently bought a Sony Ericsson mobile phone and I would like to add a missing feature myself. In fact I cannot actually disable Internet connection in an easy way when roaming, which cost me a lot of money last time I moved away ... So I would like to develop a little application that would just replace the actual Internet configuration with a fake configuration to avoid auto-connections.

So what I would like to know is how can I access programmatically to my phone settings? I know that Sony Ericsson provides a SDK to run Java applications on its customised JVM. So what I am actually looking for is to know if they extended the J2ME functionality to fit their devices requirements.

This is not well documented so I am asking this question with the hope that someone here already had experience with development targeted for Sony Ericsson devices.

Thanks.

NB: This is a Sony Ericsson Elm which is based on the Sony Ericsson OS with SE Java Platform 8.5.


Edit: I accepted QuickRecipesOnSymbianOS answer as it gave me a clue on the only feature that could have helped me, but which is unfornatunately missing. The Sony Ericsson Java Platform is the only API I could use to develop real programs on my phone. But the JP-8.5 does not implement the JSR-307 package which could help me in managing APN. Thanks everyone for your help.

A: 

Note: My answer below assumed it was about a symbian device. Since it was actually a J2me device none of the below applies


The easiest way to achieve what you want to do is probably to just remove all the "destinations" when you want to prevent auto connections. Otherwise the device will test each destination in turn until it finds one that works.

You can also set up your destinations so that they are not allowed to be used automatically. This setting must be done individually for each destination.

You can also group your destinations and set one of the groups to the default. If you set the default to an empty group you should not get any automatic connections.

Note that I have not tested any of these methods myself. When I roam I turn off automatic updates in the apps that use them. Some apps can even detect when you are roaming and avoid auto connects.

There are S60 apps available that improves the connection management of vanilla S60, but I do not know if any of them can help you with your problem.

If you are dead set on doing the programming yourself you have to use the C++ SDK for Symbian S60 available from Forum Nokia. Java ME does not allow you to manipulate the destinations of the device.

Ola
That is what I am actually doing, removing manually Intenet and MMS settings to avoid auto-connections. In fact this is quite annoying to do it manually everytime, even more when you are often roaming. Programming on with the Symbian C++ SDK is not the approach I love the most, but it seems to be the only one to match my needs. Or getting back to WM6 ...
Ucodia
+1  A: 

Well, I hope you got the great Vivaz phone, not the Satio.

In order to learn about Symbian OS C++, first go to the Foundation website.

Relevant plug: the latest introduction to Symbian OS C++ in book form is Quick Recipes on Symbian OS

For now, you won't find a better way than Symbian OS C++ to manipulate your handset access points.

JavaME simply doesn't have the correct APIs for this, at least not until JSR-307 is implemented.

I believe Qt isn't integrated quite tightly enough just yet either but that should change soon enough. Keep an eye on it.

Extending the Symbian Python runtime to do what you want would require some Symbian OS C++ anyway.

QuickRecipesOnSymbianOS
This not a Vivaz or Satio phone, it is the Elm, so I cannot us Symbian Foundation. Thanks for these resources. So it seems that my only choice is going to be the Symbian S60 C++ SDK.
Ucodia
Unfortunately, the Elm is based on Sony Ericsson Java Platform 8.5 (JP-8.5), not Series60. You won't be able to use Symbian OS C++ at all
QuickRecipesOnSymbianOS
I accept this answer as it gave me a clue on the only feature that could have helped me, but which is unfornatunately missing. The Sony Ericsson Java Platform is only API I could use to develop real programs on my phone. But the JP-8.5 does not implement the JSR-307 package which could help me in managing APN. Thanks everyone for your help.
Ucodia
A: 

Yes you will need to use Symbian C++ to modify the CommDB, which holds the list of connections. It is quite painful to work with it directly, but there are some utility classes that can help you out. Take a look at CApSelect, CApDataHandler and CApAccessPointItem, all in the developer library.

And yes, these will work on all modern Symbian handsets, independent of brand.

Teknolog
A: 

The Elm device should have (I haven't verified this) the access point API originally designed by Nokia. Not sure whether you can use it for the purpose you want though. The J2me developer guidelines available from developer.sonyericsson.com should have all the information you need.

Ola