1

シンガポールの OneMap サーバーをベースマップとして ESRI Android SDK を使用しています。マップのロケーション サービスを開始すると、無効な SpatialReference が原因で、正確な円によって例外が発生します。

Could not update the active symbol
java.lang.RuntimeException: Invalid SpatialReference.
at com.esri.core.geometry.SpatialReference.nativeGetUnit(Native Method)
at com.esri.core.geometry.SpatialReference.getUnit(Unknown Source)
at com.esri.android.map.LocationService$a.k(Unknown Source)
at com.esri.android.map.LocationService$a$a.onLocationChanged(Unknown Source)

私のコードは次のとおりです

map = (MapView) view.findViewById(R.id.map);

basemap = new ArcGISTiledMapServiceLayer
            ("http://e1.onemap.sg/arcgis/rest/services/SM128/MapServer");

map.addLayer(basemap);

map.setOnStatusChangedListener(new OnStatusChangedListener()
{

    private static final long serialVersionUID = 1L;

    @Override
    public void onStatusChanged(Object source, STATUS status) {
        if (OnStatusChangedListener.STATUS.INITIALIZED == 
                            status && source == map) 
         { 

            //Start location service
            LocationService ls = map.getLocationService();

            ls.setLocationListener(new LocationListener(){

                 @Override
                 public void onLocationChanged(Location location) {
                                 // Do something                            

                            }

                 @Override
                 public void onProviderDisabled(String provider) {
                                // TODO Auto-generated method stub

                            }

                 @Override
                 public void onProviderEnabled(String provider) {
                                // TODO Auto-generated method stub

                            }

                 @Override
                 public void onStatusChanged(String provider,
                                    int status, Bundle extras) {
                                // TODO Auto-generated method stub

                            }

                   });

                   ls.start();
        }

}

この問題は、精度サークルが無効になっている場合は発生しませんが、私の場合は有効にする必要があります。

どんな助けでも大歓迎です。

4

2 に答える 2