Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Java Development

Reply
Contributor
Posts: 25
Registered: ‎05-19-2010
My Device: 9360
My Carrier: Vodafone

8900 simulator - "An unsupported API was called: RimGpsEnableTrackingData"

Hello, I'm looking for help here after googling for a time without finding any solution of clue about this error.

 

I have a Java application developped with eclipse JDE and API level 5.0 (max. for 8900 I think). This application has a background process that starts when the BlackBerry boots. It was working fine but after adding some GPS funcionality, when testing it in the 8900 simulator, after it starts (the simulator) shows a whindow complaining about 'An unsupported API was called: RimGpsEnableTrackingData' and offering to accept, ignore, ignore all DE372s or cancel. The best option seems to be 'Ignore All DE372s'  and after that the simulator becomes really unresponsive to key pushes and unusable.

 

I also use the 9360 simulator and the application works fine in it, but I'd need the 8900 simulator to work too.

 

Do you know a solution or workaround about this problem? Thanks in advance....

Developer
Posts: 19,636
Registered: ‎07-14-2008
My Device: Not Specified

Re: 8900 simulator - "An unsupported API was called: RimGpsEnableTrackingData"

8900 were originally released with OS 4.6.1.  You will need to make sure your Simulator runs OS 5.0. 

 

http://us.blackberry.com/sites/developers/resources/simulators.html

Contributor
Posts: 25
Registered: ‎05-19-2010
My Device: 9360
My Carrier: Vodafone

Re: 8900 simulator - "An unsupported API was called: RimGpsEnableTrackingData"

Thank you, it has all the sense. I'll check it and I'll post back.

Contributor
Posts: 25
Registered: ‎05-19-2010
My Device: 9360
My Carrier: Vodafone

Re: 8900 simulator - "An unsupported API was called: RimGpsEnableTrackingData"

It seems that I was using already the 8900 simulator with 5.0.0.535 version...I've tested my application with the 5.0.0.441 downloaded from the above link too, but with the same bad results regrettably.

Developer
Posts: 19,636
Registered: ‎07-14-2008
My Device: Not Specified

Re: 8900 simulator - "An unsupported API was called: RimGpsEnableTrackingData"

Shame, sorry for suggesting something that did not help.

 

Just wondering, can you isolate the failing code?  If you can then we can create a simple application that just uses that and easily try it on other Simulators and devices to prove the problem. 

Contributor
Posts: 25
Registered: ‎05-19-2010
My Device: 9360
My Carrier: Vodafone

Re: 8900 simulator - "An unsupported API was called: RimGpsEnableTrackingData"

I was before of this test suspecting about the 'SatelliteInfo' class, supported from 5.0.0; I thought it was not correctly supported for 8900 simulator, in spite of that in a real 8900 device that it seems to work correctly with slightly differences from 9360 (BlackBerryLocation.getSatelliteInfo() gives always 12 satellites in 8900 while it gives only a number of satellites with getSignalQuality()>0 for 9360). In any case, I removed the usage of 'SatelliteInfo' class from the application but the error persisted.

 

I'll try to isolate the error with a simple application for better diagnostic.

 

 

Contributor
Posts: 25
Registered: ‎05-19-2010
My Device: 9360
My Carrier: Vodafone

Re: 8900 simulator - "An unsupported API was called: RimGpsEnableTrackingData"

Finally, I've isolated the problem and it's related about the satellite info functionality. As a very little piece of code to reproduce the error:

 

public class Main extends UiApplication {
	
	public Main() {}
	
	public static void main(String[] args) {
		Main main = new Main();
		main.start();
	}
	
	private void start() {
		BlackBerryCriteria criteria = new BlackBerryCriteria(GPSInfo.GPS_MODE_AUTONOMOUS);
		criteria.setSatelliteInfoRequired(true, false);
		try {
			BlackBerryLocationProvider lp = (BlackBerryLocationProvider)LocationProvider.getInstance(criteria);
			if (lp != null && lp.getState() == LocationProvider.AVAILABLE) {
				lp.setLocationListener(new handleGPSListener(),10,-1,-1);
			}
		} catch (Exception ex) {
			System.out.println("Exception:" + ex.getMessage());
		} finally {
			System.exit(0);
		}
	}
	
	public class handleGPSListener implements LocationListener {
		public void locationUpdated(LocationProvider provider, Location location) {}
		public void providerStateChanged(LocationProvider provider, int newState) {}
	}
}

 

The error popups when execution reaches 'lp.setLocationListener(new handleGPSListener(),10,-1,-1);'. But investigating more deeply I've found that setting in criteria 'criteria.setSatelliteInfoRequired(false, false);', the error doesn't popups. I have more criteria setters in the full code but it seems that they doesn't cause this error.

 

Only remark that satellite info works fine in a real 8900 device, with the differences that I noticed with a 9360 device that I described in my previous post.

 

 

 

Developer
Posts: 16,985
Registered: ‎07-29-2008
My Device: Z10 LE, Z30, Passport
My Carrier: O2 Germany

Re: 8900 simulator - "An unsupported API was called: RimGpsEnableTrackingData"

you can report issues in https://www.blackberry.com/jira/secure/Dashboard.jspa
----------------------------------------------------------
feel free to press the like button on the right side to thank the user that helped you.
please mark posts as solved if you found a solution.
@SimonHain on twitter