qq_14854413 2016-08-28 11:31 采纳率: 50%
浏览 1374

Android开发百度地图接入问题

接入百度地图的SDK,按照他的定位文档定位为什么有200多米的偏差?

  • 写回答

6条回答 默认 最新

  • threenewbee 2016-08-28 11:50
    关注
     /**
     * GPS坐标转换为百度地图坐标
     * 需要引入javabase64.jar 和json的一些包
     * 
     */
    public class Gps2BaiDu
    {
    public static void main(String[] args)
    {
    //转换前的GPS坐标
    double x=116.397428;
    double y=39.90923;
    //google 坐标转百度链接   //http://api.map.baidu.com/ag/coord/convert?from=2&to=4&x=116.32715863448607&y=39.990912172420714&callback=BMap.Convertor.cbk_3694
    //gps坐标的type=0
    //google坐标的type=2
    //baidu坐标的type=4
    String path = "http://api.map.baidu.com/ag/coord/convert?from=0&to=4&x="+x+"+&y="+y+"&callback=BMap.Convertor.cbk_7594";
    try
    {
    //使用http请求获取转换结果
    URL url = new URL(path);
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setRequestMethod("GET");
    conn.setConnectTimeout(5 * 1000);
    InputStream inStream = conn.getInputStream();
    
    ByteArrayOutputStream outStream = new ByteArrayOutputStream();
    byte[] buffer = new byte[1024];
    int len = 0;
    while ((len = inStream.read(buffer)) != -1)
    {
    outStream.write(buffer, 0, len);
    }
    //得到返回的结果
    String res = outStream.toString();
    System.out.println(res);
                //处理结果
    if (res.indexOf("(") > 0 && res.indexOf(")") > 0)
    {
    String str = res.substring(res.indexOf("(") + 1, res.indexOf(")"));
    String err = res.substring(res.indexOf("error") + 7, res.indexOf("error") + 8);
    if ("0".equals(err))
    {
    JSONObject js = JSONObject.fromObject(str);
    //编码转换
    String x1 = new String(Base64.decode(js.getString("x")));
    String y1 = new String(Base64.decode(js.getString("y")));
    System.out.println(x1 + "  " + y1);
    }
    }
    } catch (Exception e)
    {
    e.printStackTrace();
    }
    
    }
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决