我想在图像视图上显示一个静态的谷歌地图。分享位置时显示类似"Whatsapp“的内容。我该怎么做呢?
发布于 2011-03-16 23:03:00
Google为需要API密钥的用户提供了静态地图API。
您可以从web下载动态配置的位图,将其存储在文件系统或内存中,然后从中获取可绘制的位图,以便将其设置为ImageView。
您需要从您的坐标生成一个url,以便使用此url从web加载数据。以显示巴黎埃菲尔铁塔的200x200位图为例:
String latEiffelTower = "48.858235";
String lngEiffelTower = "2.294571";
String url = "http://maps.google.com/maps/api/staticmap?center=" + latEiffelTower + "," + lngEiffelTower + "&zoom=15&size=200x200&sensor=false&key=YOUR_API_KEY"关于如何从web上下载图像以便在图像视图中显示,StackOverflow已经有了一些答案:link
你可以在这里找到Google Static Maps API的文档。
发布于 2013-03-06 10:25:37
public static Bitmap getGoogleMapThumbnail(double lati, double longi){
String URL = "http://maps.google.com/maps/api/staticmap?center=" +lati + "," + longi + "&zoom=15&size=200x200&sensor=false";
Bitmap 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();
}
return bmp;
}发布于 2015-02-21 05:57:34
你现在也可以使用SDK原生显示静态图片(这是在2014年12月添加的):https://developers.google.com/maps/documentation/android/lite
这将产生一个MapView。
https://stackoverflow.com/questions/5324004
复制相似问题