无法创建从一个点到另一个ArcGIS Android的路由

无法创建从一个点到另一个ArcGIS Android的路由,android,routing,arcgis,Android,Routing,Arcgis,我一直在努力创建两点之间的路线(起点、终点)。但我得到了以下错误: 未定位“停止”中的位置“位置1”。“停止”中的位置“位置2”未定位。至少需要2个有效站点。“站点”不包含任何路线的有效输入。 我已经在gis.stackexchange.com和geonet.esri.com上发布了这个问题,除了一个没有帮助的回复外,没有得到任何回复 我的代码: private final String routeTaskURL = "http://sampleserver3.arcgisonline.com/

我一直在努力创建两点之间的路线(起点、终点)。但我得到了以下错误:

未定位“停止”中的位置“位置1”。“停止”中的位置“位置2”未定位。至少需要2个有效站点。“站点”不包含任何路线的有效输入。

我已经在gis.stackexchange.com和geonet.esri.com上发布了这个问题,除了一个没有帮助的回复外,没有得到任何回复

我的代码:

private final String routeTaskURL = "http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Network/USA/NAServer/Route";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mMapView = (MapView) findViewById(R.id.map);
    mMapView.enableWrapAround(true);
    new Thread(new Runnable() {
        @Override
        public void run() {
            try {
                UserCredentials userCredentials = new UserCredentials();
                userCredentials.setUserToken(token, clientID);
                RouteTask routeTask = RouteTask.createOnlineRouteTask(routeTaskURL, userCredentials);
                RouteParameters routeParameters = routeTask.retrieveDefaultRouteTaskParameters();
                NAFeaturesAsFeature naFeatures = new NAFeaturesAsFeature();

                Point startPoint = new Point(36.793653, -119.866896);
                Point stopPoint = new Point(36.795488, -119.853345);

                StopGraphic startPnt = new StopGraphic(startPoint);
                StopGraphic stopPnt = new StopGraphic(stopPoint);

                naFeatures.setFeatures(new Graphic[] {startPnt, stopPnt});
                routeParameters.setStops(naFeatures);

                RouteResult mResults = routeTask.solve(routeParameters);
                List<Route> routes = mResults.getRoutes();
                System.out.println(mResults.getRoutes());

                Route mRoute = routes.get(0);
                Geometry geometry = mRoute.getRouteGraphic().getGeometry();
                Graphic symbolGraphic = new Graphic(geometry, new SimpleLineSymbol(Color.BLUE, 3));
                mGraphicsLayer.addGraphic(symbolGraphic);
                System.out.println(mResults.getStops());
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }).start();
}
私有最终字符串routeTaskURL=”http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Network/USA/NAServer/Route";
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mMapView=(MapView)findViewById(R.id.map);
mMapView.enablewarparound(true);
新线程(newrunnable()){
@凌驾
公开募捐{
试一试{
UserCredentials UserCredentials=新的UserCredentials();
setUserToken(token,clientID);
RouteTask RouteTask=RouteTask.createOnlineRouteTask(routeTaskURL,userCredentials);
RouteParameters RouteParameters=routeTask.retrieveDefaultRouteTaskParameters();
NAFeaturesAsFeature naFeatures=新的NAFeaturesAsFeature();
点起始点=新点(36.793653,-119.866896);
停止点=新点(36.795488,-119.853345);
StopGraphic startPnt=新的StopGraphic(起始点);
停止图形停止NT=新的停止图形(停止点);
setFeatures(新图形[]{startPnt,stopPnt});
线路参数.设置面板(naFeatures);
RouteResult mResults=路由任务求解(路由参数);
List routes=mResults.getRoutes();
System.out.println(mResults.getRoutes());
Route mRoute=routes.get(0);
几何图形=mRoute.getRouteGraphic().getGeometry();
图形符号Graphic=新图形(几何图形,新单纯形符号(Color.BLUE,3));
mGraphicsLayer.addGraphic(符号图形);
System.out.println(mResults.getStops());
}捕获(例外e){
e、 printStackTrace();
}
}
}).start();
}
我在网上搜索过。许多开发者都面临着这个问题。我试过所有的解决办法,但都不管用。我从ArcGIS路由示例应用程序中获得了routeTaskURL。如果在浏览器中打开,ArcGIS地图的中给出的链接将显示403错误

注意:“token”和“clientID”在第一步中声明,它们都来自我注册应用程序的ArcGIS开发者控制台。


有什么建议吗?

您的X和Y值已切换。更改为:

Point startPoint = new Point(-119.866896, 36.793653);
Point stopPoint = new Point(-119.853345, 36.795488);

请参阅以了解构造函数参数是(x,y),而不是(y,x)。您正在使用的路由服务具有默认的空间参考4326,即未投影的经度和纬度-119.866896和-119.853345不是有效的纬度(y)值,但它们是有效的经度(x)值。

谢谢您解决了我的问题。但你们能看看我更新的代码,看看为什么路线并没有显示在地图上吗。我已经添加了所有必要的图形层。代码链接:我很高兴这起作用。你应该提出一个新问题。我很快就去看看。