`
antkingwei
  • 浏览: 41145 次
  • 性别: Icon_minigender_1
  • 来自: 日照
社区版块
存档分类
最新评论

goolge 地图地址位置解析

阅读更多

Java代码package com.android.yibai.antking;

import java.util.ArrayList;
import java.util.List;
import java.util.Locale;

import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Point;
import android.location.Address;
import android.location.Geocoder;
import android.os.Bundle;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;
import com.google.android.maps.Projection;

public class GeocoderMain extends MapActivity{
    //地图显示控制相关的变量定义
	private MapView map = null;
	private MapController mapCon;
	private Geocoder geo;
	private static final int ERROR_DIALOG=1;
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		geo= new Geocoder(this,Locale.CHINA);
		//获取MapView
		map = (MapView)this.findViewById(R.id.mapview);
		//设置显示模式
//		map.setTraffic(false);
//		map.setSatellite(true);
		//map.setStreetView(true);
		//设置可以缩放
		map.setBuiltInZoomControls(true);
		List addresses = null;
		try{
			addresses = geo.getFromLocationName("日照市万平口", 1);
			
			}catch(Exception e){
				e.printStackTrace();
			}
	   if(addresses.size()==0){
		   showDialog(ERROR_DIALOG);
		   GeoPoint geoBeijing = new GeoPoint(
				   39906033,116397700);
		   mapCon = map.getController();
		   mapCon.setCenter(geoBeijing);
		   mapCon.setZoom(4);
		   
	   }else{
		   Address address = (Address) addresses.get(0);
		   //设置初始地图的中心位置
		   GeoPoint geoPoint =new GeoPoint(
			(int)(address.getLatitude()*1E6),
			(int)(address.getLongitude()*1E6)
		   );
		   mapCon = map.getController();
		   mapCon.setCenter(geoPoint);
		   mapCon.setZoom(20);
		   List<Overlay> overlays = this.map.getOverlays();
		   PositionOverlay overlay = new PositionOverlay(geoPoint,this,R.drawable.icon);
		   overlays.add(overlay);
		  
		   
	   }
	}
	@Override
	protected boolean isRouteDisplayed() {
		// TODO Auto-generated method stub
		return false;
	}
	protected Dialog onCreateDialog(int id){
		return new AlertDialog.Builder(this).setTitle("查询出错了")
		.setMessage("地名出错,请从新输入").create();
	}
	class PositionOverlay extends Overlay{
		private GeoPoint geoPoint;
		private Context context;
		private int drawable;
		public PositionOverlay(GeoPoint geoPoint,Context context,int drawable){
			super();
			this.geoPoint = geoPoint;
			this.context = context;
			this.drawable = drawable;
			
		}
		public void draw(Canvas canvas,MapView mapView,boolean shadow){
			Projection projection = mapView.getProjection();
			Point point = new Point();
			projection.toPixels(geoPoint, point);
			Bitmap bitmap =BitmapFactory.decodeResource(context.getResources(), drawable);
			canvas.drawBitmap(bitmap, (point.x-bitmap.getWidth()/2), (point.y-bitmap.getHeight()),new Paint());
			super.draw(canvas, mapView, shadow);
		}
	}

}
 
分享到:
评论

相关推荐

    googleMap根据经纬度获取地理位置

    在IT行业中,尤其是在Web开发领域,常常需要利用地图服务来获取和展示地理位置信息。Google Maps API 是一个广泛使用的工具,它允许开发者通过JavaScript或者其他的编程语言与Google Maps进行交互,实现各种功能,如...

    安卓手机后台监控地理位置,并实时发送到服务端,服务端实时在地图上显示手机的地理位置和路线

    首先,我们需要理解客户端(安卓手机)如何获取和处理地理位置信息,然后是如何通过网络通信将这些信息发送到服务端,最后是服务端如何接收并解析这些数据,以及如何在地图上实时展示。 1. **安卓客户端地理定位**...

    Google 地图 JavaScript API 示例 简单地址解析

    通过这个示例,我们可以学习如何使用Google地图JavaScript API进行地址解析,并在地图上显示结果。开发者可以根据需求进一步扩展,例如处理多个地址、添加事件监听器或实现更复杂的交互功能。同时,需要注意的是,...

    google地址解析

    此外,为了遵守Google的服务条款,记得在使用API时添加适当的API密钥和显示Google地图的信用信息。 在提供的压缩包文件“jiaa”中,可能包含了一些示例代码或教程资源,可以帮助你更深入地理解和应用Google Maps ...

    C#调用高德、百度及google地图api解析经纬度及路径计算、位置标注源码

    总的来说,"C#调用高德、百度及Google地图api解析经纬度及路径计算、位置标注源码"这个主题涵盖了跨平台的地图API使用,包括但不限于HTTP请求、JSON解析、地理编码、路径规划等核心功能。对于想要在C#项目中集成地图...

    PHP谷歌地图API

    开发者首先通过PHP获取和解析IP,然后将得到的地理位置信息映射到谷歌地图上,提供直观的可视化展示。这样的技术在许多网站和服务中都有应用,例如追踪用户来源、定位服务、或者基于位置的推荐系统等。

    谷歌地图API

    Google 地图 API Google 代码主页 &gt; Google 地图 API &gt; Google 地图 API 注册

    通过地名搜索在谷歌地图上显示地理全名和经纬度

    2. 地名搜索:当用户输入地名并提交后,程序会发送请求到谷歌地图的Geocoding API,检索相应的地理位置信息。 3. 结果解析:API返回的数据包含地名的经纬度,程序会解析这些数据。 4. 显示地图:根据获取的经纬度,...

    C# Google地理解析封装dll

    "地理解析"是指将地址或者坐标转换为地理位置信息的过程,这对于定位、导航、位置服务等应用至关重要。"dll"(动态链接库)是Windows系统中的一个共享代码库,多个程序可以同时使用一个dll中的函数,从而节省内存...

    vc谷歌地图开发_googlemap

    5. **通信与交互**:为了使VC++应用能够与Webview中的地图进行交互,例如获取用户点击的地理位置,你需要实现JavaScript和C++之间的通信。这可以通过使用`IWebBrowser2::ExecWB()`方法实现ActiveX对象的命令,或者...

    利用Google Map解析中国大陆4095个省市县的默认地理位置,获取地理坐标

    在本项目中,我们关注的是如何利用Google Map API来解析并获取中国大陆4095个省市县的默认地理位置坐标。这是一项涉及网络编程、JavaScript以及GIS技术的任务。 首先,Google Map API是Google提供的一种服务,允许...

    Androidstudio 上拉刷新 json解析 显示地理位置

    5. 如果需要在地图上显示位置,集成Google Maps SDK,并创建地图Fragment或Activity,将地理位置信息作为标记添加到地图上。 6. 当上拉刷新触发时,更新JSON请求,获取新数据,并刷新列表或地图上的位置信息。 确保...

    易语言google地图生成工具

    而易语言Google地图生成工具则是利用易语言的强大功能,为开发者提供了一个便捷的平台,用于生成Google地图的图像,并对地址信息进行解析和处理。 二、核心功能 1. 地图生成:该工具能够根据输入的地理位置信息,...

    流域kml解析,高德地图、百度地图等进行展示。

    在IT行业中,地理信息系统(GIS)是处理地理位置信息的关键技术,而KML(Keyhole Markup Language)文件则是其中一种常用的数据格式,尤其在谷歌地球、高德地图和百度地图等平台中广泛使用。本篇文章将深入探讨流域...

    易语言显ip地理位置

    4. **界面展示**:将获取到的地理位置信息在易语言的用户界面上展示出来,这可能涉及到控件的操作和布局设计,比如使用标签控件显示城市名,地图控件展示具体位置。 5. **错误处理**:考虑到可能出现的网络问题、IP...

    百度和高德以及googleMap坐标系的互相转换以及通过经纬度获取地址以及逆地址解析

    getGeocoderLatitude 根据地址获取到经纬度 getAboutLocation 根据经纬度获取到所在城市信息 bd_encrypt 将 GCJ-02 坐标转换成 BD-09 坐标 bd_decrypt 将 BD-09 坐标转换成 GCJ-02 坐标

    易语言google地图生成工具源码.rar

    1. Google Maps API:Google提供了丰富的地图API,允许开发者在网页或应用程序中嵌入地图、获取地理位置信息、进行路线规划等功能。这里可能使用了JavaScript API或静态地图API来获取地图图片。 2. 图像处理:地图...

    android实现解析Google地图API json数据

    在Android开发中,集成Google地图API并解析其返回的JSON数据是常见的需求。这涉及到对Android SDK、网络请求、JSON解析以及Google Maps API的理解。以下将详细阐述如何在Android应用中实现这一功能。 首先,我们...

    谷歌地图下载程序

    2. **JSON解析**:谷歌地图API通常返回JSON格式的数据,需要了解如何使用Json.NET或其他库解析。 3. **图像处理**:处理地图切片可能涉及图像读取、合并和保存,C#中的System.Drawing库可提供帮助。 4. **多线程/...

    Google 地图 google map api / 地图有关

    4. **标记(Marker)与信息窗口(InfoWindow)**:可以在地图上添加标记来表示特定的地理位置,点击标记时可以弹出信息窗口显示详细信息。 5. **路径绘制(Polyline)**:用于绘制多点之间的线路,常用于路线规划。...

Global site tag (gtag.js) - Google Analytics