首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在android中显示带有路由的Google静态地图

在android中显示带有路由的Google静态地图
EN

Stack Overflow用户
提问于 2014-04-09 15:10:00
回答 2查看 1.5K关注 0票数 1

我可以在谷歌静态地图上显示标记,但我想使用谷歌静态地图与两点之间的路由,任何人可能会告诉我如何才能在谷歌静态地图上显示路由b/w在此代码中,第一个url运行正常,但当我使用路径url它不工作,它给我的url错误,请任何人帮助我的路径在静态url这是我的代码:

代码语言:javascript
运行
复制
package com.example.staticmap;

import java.io.IOException;
import java.io.InputStream;

import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;

import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.Menu;
import android.widget.ImageView;

public class MainActivity extends Activity {
    ImageView image;
        @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        image= (ImageView)findViewById(R.id.image);
   new abc().execute();
 //  image.setImageBitmap(bmp);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }


    class abc extends AsyncTask<Void, Void, Bitmap>{
        double lati = 29.39444;
        double longi= 76.966041;

        @Override
        protected Bitmap doInBackground(Void... params) {
            // TODO Auto-generated method stub
            Bitmap bmp = null;
        try{
String URL = "http://maps.google.com/maps/api/staticmap?center=&markers=color:blue%7Clabel:S%7C" +lati + "," + longi + "&zoom=15&size=200x200&maptype=roadmap&sensor=false";    

       //String URL = "http://maps.googleapis.com/maps/api/staticmap?size=400x400&path=40.737102,-73.990318|40.749825,-73.987963|40.752946,-73.987384|40.755823,-73.986397&sensor=false";

       // bmp = null;
                HttpClient httpclient = new DefaultHttpClient();   
                HttpGet request = new HttpGet(URL); 

                InputStream in = null;
                try {
                    in = httpclient.execute(request).getEntity().getContent();
                    bmp = BitmapFactory.decodeStream(in);

                    in.close();

                } catch (IllegalStateException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (ClientProtocolException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }

        }catch(Exception ee){
            ee.printStackTrace();
        }

            return bmp;
        }

    @Override
        protected void onPostExecute(Bitmap result) {
            image.setImageBitmap(result);
        }

    }   
}
EN

回答 2

Stack Overflow用户

发布于 2014-04-26 13:24:04

以下代码帮助您在内置地图中显示路线:

代码语言:javascript
运行
复制
String fullAddress = "Your full address";

//Using address
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://maps.google.com/maps?f=d&daddr=" + fullAddress));

//Using Latitude,Longitude
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://maps.google.com/maps?f=d&daddr=51.448,-0.972"));

intent.setComponent(new ComponentName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity"));

startActivity(intent);
票数 1
EN

Stack Overflow用户

发布于 2014-04-26 13:17:43

您可以在图像视图中使用地图截图和两个地理点之间的路径。这是一个绘制到地理点http://wptrafficanalyzer.in/blog/drawing-driving-route-directions-between-two-locations-using-google-directions-in-google-map-android-api-v2/之间的路径的很好的示例

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22955289

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档