Reputation: 233
I'm getting a fatal exception when trying to animate the map to a certain GeoPoint - here is the Exception:
12-20 17:53:20.400: E/Crittercism(3523): java.lang.NullPointerException
12-20 17:53:20.400: E/Crittercism(3523): at com.amazon.geo.maps.MercatorProjection.latLongToWorldPixels(MercatorProjection.java:397)
12-20 17:53:20.400: E/Crittercism(3523): at com.amazon.geo.maps.MercatorProjection.toPixels(MercatorProjection.java:69)
12-20 17:53:20.400: E/Crittercism(3523): at com.amazon.geo.maps.MapView.animateTo_AmazonInternal(MapView.java:1801)
12-20 17:53:20.400: E/Crittercism(3523): at com.amazon.geo.maps.MapController.animateTo(MapController.java:46)
12-20 17:53:20.400: E/Crittercism(3523): at com.fatattitude.myapplication.MyMapActivity.moveMapToPoint(BusMapActivity.java:1564)
Here is my code. My log output also shows that the GeoPoint had values of LatitudeE6= 51537141 and LongitudeE6= -246271
private void moveMapToPoint(GeoPoint gp, int zoomLevel) {
MapController mc = mapView.getController();
if (zoomLevel < 0)
zoomLevel = mapView.getZoomLevel();
mc.stopAnimation(true);
mc.setZoom(zoomLevel);
String strGeoPointInfo = String.format("Lat:%d, Lng:%d", gp.getLatitudeE6(), gp.getLongitudeE6() );
Log.i("GeoPoint-Info", "**moveMapToPoint: " + strTestOutput);
mc.animateTo(gp);
}
If I comment the line
//mc.stopAnimation(true);
I no longer get the exception.
Can anyone help me to understand why this exception has occurred?
Please help me on this.
Upvotes: 3
Views: 332
Reputation: 4179
The app is likely to wait before the GPS Sensor is looking for the location.
mMyLocationOverlay.runOnFirstFix(new Runnable() {
public void run() {
mapView.getController().animateTo(myLocation);
}});
Upvotes: 4