androi高德地图路径规划问题

问题描述

androi高德地图路径规划问题

有做过高德路径规划的大神吗?下面是我仿照的高德官方案例来写的代码,可是总是报错,然后错误码是45,不知道是怎么回事。
package com.example.maptest;

import android.os.Bundle;

import com.amap.api.maps.AMap;
import com.amap.api.maps.CameraUpdateFactory;
import com.amap.api.maps.MapView;
import com.amap.api.maps.MapsInitializer;
import com.amap.api.maps.model.Marker;
import com.amap.api.maps.overlay.DrivingRouteOverlay;
import com.amap.api.services.core.LatLonPoint;
import com.amap.api.services.route.BusRouteResult;
import com.amap.api.services.route.DrivePath;
import com.amap.api.services.route.DriveRouteResult;
import com.amap.api.services.route.RouteSearch;
import com.amap.api.services.route.RouteSearch.DriveRouteQuery;
import com.amap.api.services.route.RouteSearch.OnRouteSearchListener;
import com.amap.api.services.route.WalkRouteResult;

import android.app.Activity;
import android.view.Menu;
import android.widget.Toast;

public class MainActivity extends Activity implements OnRouteSearchListener{

private AMap aMap;
private MapView mapView;
private int drivingMode = RouteSearch.DrivingDefault;
private DriveRouteResult driveRouteResult;
private LatLonPoint startPoint;
private LatLonPoint endPoint;
private RouteSearch routeSearch;
private Marker startMk, targetMk;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

// MapsInitializer.sdcardDir = OffLineMapUtils.getSdCacheDir(this);
mapView = (MapView) findViewById(R.id.map);
mapView.onCreate(savedInstanceState);// 此方法必须重写

    routeSearch = new RouteSearch(this);
    routeSearch.setRouteSearchListener(this);
    init();
    startPoint = new LatLonPoint(114.2001098435, 22.9537733103);
    endPoint = new LatLonPoint(23.0231558804, 114.6609545055);

    searchRouteResult(startPoint, endPoint);
}

private void init() {
    if (aMap == null) {

        aMap = mapView.getMap();

        }

        // 设置地图可视缩放大小

// aMap.moveCamera(CameraUpdateFactory.zoomTo(12));

}

@Override

protected void onResume() {

super.onResume();

mapView.onResume();

}

/**
095.
* 方法必须重写
096.
*/

@Override

protected void onPause() {

super.onPause();

mapView.onPause();

}

/**
104.
* 方法必须重写
105.
*/

@Override

protected void onSaveInstanceState(Bundle outState) {

super.onSaveInstanceState(outState);

mapView.onSaveInstanceState(outState);

}

/**
113.
* 方法必须重写
114.
*/

@Override

protected void onDestroy() {

super.onDestroy();

mapView.onDestroy();

}
public void searchRouteResult(LatLonPoint startPoint,LatLonPoint endPoint) {
    final RouteSearch.FromAndTo fromAndTo = new RouteSearch.FromAndTo(startPoint, endPoint);
    DriveRouteQuery query = new DriveRouteQuery(fromAndTo, drivingMode,
            null, null, "");// 第一个参数表示路径规划的起点和终点,第二个参数表示驾车模式,第三个参数表示途经点,第四个参数表示避让区域,第五个参数表示避让道路
    routeSearch.calculateDriveRouteAsyn(query);
}

@Override
public void onDriveRouteSearched(DriveRouteResult arg0, int arg1) {
    System.out.println("----------------"+arg1);

    Toast.makeText(this, "---"+arg1, Toast.LENGTH_SHORT).show();
    if (arg1 == 0) {
        if (arg0 != null && arg0.getPaths() != null
                && arg0.getPaths().size() > 0) {
            driveRouteResult = arg0;
            DrivePath drivePath = driveRouteResult.getPaths().get(0);
            aMap.clear();// 清理地图上的所有覆盖物
            DrivingRouteOverlay drivingRouteOverlay = new DrivingRouteOverlay(
                    this, aMap, drivePath, driveRouteResult.getStartPos(),
                    driveRouteResult.getTargetPos());
            drivingRouteOverlay.removeFromMap();
            drivingRouteOverlay.addToMap();
            drivingRouteOverlay.zoomToSpan();
        } else {
    //      ToastUtil.show(RouteActivity.this, R.string.no_result);
            Toast.makeText(this, "错误1", Toast.LENGTH_SHORT).show();
        }
    } else if (arg1 == 27) {
//      ToastUtil.show(RouteActivity.this, R.string.error_network);
        Toast.makeText(this, "错误2", Toast.LENGTH_SHORT).show();
    } else if (arg1 == 32) {
//      ToastUtil.show(RouteActivity.this, R.string.error_key);
        Toast.makeText(this, "错误3", Toast.LENGTH_SHORT).show();
    } else {
//      ToastUtil.show(RouteActivity.this, getString(R.string.error_other)
//              + arg1);
        Toast.makeText(this, "错误4", Toast.LENGTH_SHORT).show();
    }

}

@Override
public void onBusRouteSearched(BusRouteResult arg0, int arg1) {
    // TODO Auto-generated method stub

}

@Override
public void onWalkRouteSearched(WalkRouteResult arg0, int arg1) {
    // TODO Auto-generated method stub

}

}

解决方案

http://www.cnblogs.com/ouyangduoduo/p/4623680.html

时间: 2024-10-26 19:28:20

androi高德地图路径规划问题的相关文章

上海中环高架仍在修复中 高德地图可规划绕行路线

5月23日零时10分许,位于上海市汶水路沪太路口的中环线高架道路发生严重车祸,高架道路受损,周边部分道路封闭.据了解,在相关高架道路修复工作进行的同时,相关部门已采取了相关道路的管制措施,并临时开通沪太路南向北右转车道,缓解由新沪路经由沪太支路进中环,分流前往宝山大场,上海大学方向的交通压力.而在修复期间,市民可使用高德地图规划行车路线,避开受此次车祸影响路段.   中环受损道路仍在修复中 据了解,24日早高峰期间,由于沪太路汶水路有所拥堵,高架快速路堵点相比平时有所减少.早高峰真北路主线地面道

路径规划怎么改文字-高德地图怎么更改路径规划infowindow中起点终点文字

问题描述 高德地图怎么更改路径规划infowindow中起点终点文字 求教大神高德地图路径规划中怎么更改起点终点infowindow中的文字 不是implement onInfowindow里的getinfowindow方法更改不了 解决方案 http://www.0531s.com/content-40-1376092-1.html

c++-蚁群算法,在航路规划,或路径规划时,地图边界怎么处理

问题描述 蚁群算法,在航路规划,或路径规划时,地图边界怎么处理 蚁群算法,在航路规划,或路径规划时,地图边界怎么处理. 边界部分我应该怎么考虑,求给个思路! 语言是c++,主要是思路. 解决方案 百度地图之路径规划高德地图路径规划百度地图之路径规划

北京交警携手高德地图 “互联网+交通”助力国际长跑节

2016北京国际长跑节于4月17日上午7时准时开跑,为保障本次赛事的顺利进行及比赛期间道路交通安全有序,北京交警与高德地图展开了深度合作,不仅进一步提升了交管部门的交通道路信息传达效率,同时使得政务处理更加便捷化.移动化.互联网化. 据悉,本次比赛之前,北京交警即与高德地图展开通力合作,不仅对部分道路采取了分时.分段临时交通管制,还提前在高德地图上线了道路封闭信息和绕行指南.既保证了本届长跑节的顺利进行,又把赛事对正常交通的影响降到了最低,全力保障了北京市民的畅通出行. 此外,在比赛期间,市民出

高德地图开启迪士尼赠票活动 带您开启迪士尼圆梦之旅

6月16日,举世瞩目的上海迪士尼乐园就要正式开园了,作为国内第二座.亚洲第三座.全球第六座迪士尼乐园,上海迪士尼乐园早在修建时就已经得到了众多迪士尼粉们的热烈期盼,开园前三天的门票在首次网上发售门票时就瞬间"秒光".那么,想第一时间体验上海迪士尼乐园又苦于没有门票怎么办?别急,高德地图来帮你! 6月16日上海迪士尼乐园正式开园当天,高德地图将开启主题为"盛夏碳GO--开启迪士尼圆梦之旅"的官方赠票活动,从6月16日的0点到6月20日的24点,高德地图用户只要参与活动

把ChinaJoy场馆握在手中 高德地图室内地图体验

近日,全球数码互动娱乐领域最具影响力的盛会--2016 ChinaJoy在上海新国际博览中心盛大开幕.作为中国游戏动漫第一展,每年的CJ展会上,各路厂商都使出浑身解数,准备了一系列精彩活动及神秘嘉宾助阵,尤其还有很多令人期待的Cosplay和Showgirl们,简直是游戏玩家们的年度盛会. 但是,去过ChinaJoy的小伙伴们都知道,在上海新国展举办的CJ展占地面积十分大,而且场馆内部地形复杂,如果没有方位感,很有可能就转的晕头转向,错过厂商的精彩活动,并错过Showgirl女神.所以,今年要想

高德地图入驻广州交警 实现“互联网+交通”无缝对接

8月4日,广州交警宣布,高德地图正式入驻广州交通指挥中心.这是广州交警与高德地图在签署战略合作协议后,继续深入探索"互联网+交通"新方向,实现交通信息精准无缝对接的新举措,旨在通过线上和线下更紧密深度融合,全面提升广州交警信息化服务及交通运行能力,继续提高服务效率.广州的"互联网+交通"应用一直进行新尝试,本次高德地图入驻广州交警智能交通指挥中心,也属全国首例,此举也表明双方将在数据融合的基础上实现高度的数据及资源共享. 高德地图入驻广州交警智能交通指挥中心 双方合

高德地图iOS新版实测 全面升级步行导航

继安卓版全面上线后,近日高德地图iOS最新版7.1版本正式上线,全面升级步行导航功能,号称解救路痴的终极利器.虽然如今的地图导航功能已经很强大,但是在步行导航的功能细节上仍然存在问题,尤其是短距离全程步行时,仅仅依靠地图上的线路指引就很容易走错路.步行导航相对于驾车导航来说,路线规划更加复杂:它需要考虑很多驾车行驶不需要考虑的过街天桥.地下通道以及更为细小的道路,这一方面考验着地图的详细程度,也考验着地图路线的步行道路规划能力.那么此次号称路痴神器的新版高德地图步行导航表现如何呢?今天,小编就选

求教大神高德地图怎么更改路径规划后marker上起点终点文字

问题描述 求教大神高德地图怎么更改路径规划后marker上起点终点文字 怎么更改路径规划后marker上起点终点文字 解决方案 http://jingyan.baidu.com/article/1974b289820bb6f4b1f77409.html