`
董子敬
  • 浏览: 8407 次
  • 性别: Icon_minigender_2
社区版块
存档分类
最新评论

android定位得到城市

 
阅读更多

android通过百度地图获取经纬度和具体地址。

官方网站上就有Demo,http://developer.baidu.com/map/index.php?title=androidsdk

可以参考,打开定位的demo,把它的

1.jar包导入,

2.在AndroidManifest中

          a.把uses-permission复制进去,

          b.申请key~并复制<meta-data

                android:name="com.baidu.lbsapi.API_KEY"

                android:value="输入你的key" />

          c.因为自己定义了类继承Application,所以在Application处加上

                      android:name="自己定义的类名~"

3.就可以写代码了。

     MainActivity:

public class MainActivity extends Activity{
	private LocationClient mLocationClient;
        //显示城市
	private TextView LocationResult;
        //开始按钮
	private Button startLocation;
	public void init(){
		startLocation = (Button)findViewById(R.id.addfence);
		LocationResult = (TextView)findViewById(R.id.textView1);
	}
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.location);
		init();
		
		mLocationClient = ((LocationApplication)getApplication()).mLocationClient;
                  //调用LocationApplication,获得需要的信息
		 ((LocationApplication)getApplication()).mLocationResult = LocationResult;
		
		startLocation.setOnClickListener(new OnClickListener() {	
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				InitLocation();
				mLocationClient.start();
		}			
			}
		});
	}
	@Override
	protected void onStop() {
		mLocationClient.stop();
		super.onStop();
	}

	private void InitLocation(){
		LocationClientOption option = new LocationClientOption();
		option.setLocationMode(LocationMode.Hight_Accuracy);//设置定位模式
		//LocationMode.Hight_Accuracy 高精度定位模式下,会同时使用GPS、Wifi和基站定位,返回的是当前条件下精度最好的定位结果
		option.setCoorType("gcj02");//返回的定位结果是百度经纬度,默认值gcj02
		//可选项:"gcj02"国策局加密经纬度坐标
		//"bd09ll"百度加密经纬度坐标
		//"bd09"百度加密墨卡托坐标		
		option.setIsNeedAddress(true);//反编译获得具体位置,只有网络定位才可以
		mLocationClient.setLocOption(option);
	}
}

LocationAplication类:

public class LocationApplication extends Application {
	public LocationClient mLocationClient;//定位SDK的核心类
	public MyLocationListener mMyLocationListener;//定义监听类	
	public TextView mLocationResult,logMsg;
	public static String city=null;
	@Override
	public void onCreate() {
		super.onCreate();
		mLocationClient = new LocationClient(this.getApplicationContext());
		mMyLocationListener = new MyLocationListener();
		mLocationClient.registerLocationListener(mMyLocationListener);
	}
	
	/**
	 * 实现实位回调监听
	 */
	public class MyLocationListener implements BDLocationListener {

		@Override
		public void onReceiveLocation(BDLocation location) {
			//Receive Location 			
			if(location.getCity()!=null){
				city=location.getCity();
			}			
			StringBuffer sb = new StringBuffer(256);
			if (location.getLocType() == BDLocation.TypeGpsLocation){//定位结果描述:GPS定位结果
				sb.append(city);//地理位置
			} else if (location.getLocType() == BDLocation.TypeNetWorkLocation){//定位结果描述:网络定位结果
				sb.append(city);
			}
			logMsg(sb.toString());
		}
	}	
	/**
	 * 显示请求字符串
	 * @param str
	 */
	public void logMsg(String str) {
		try {
			if (mLocationResult != null)
				mLocationResult.setText(str);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

 

分享到:
评论

相关推荐

    Android使用百度API定位当前城市得到城市名城

    在项目开发中经常遇到定位当前城市,并且得到城市名称的情况,网上关于百度定位例子太多,不过定位得到城市名字的却很少,我这个小例子,可以实现定位得到当前城市名称!直接拿出来用即可!

    Android使用百度地图API定位所在城市、显示城市名称

    网上关于百度地图ADI对位的Demo很多,但是找一个定位到当前城市和得到城市名字却很少,很多项目中都有自动地位到当前城市显示城市名字的的功能,我也遇到需要此功能的需求,但是找了好久都没用,于是根据自己写了一...

    android 当前城市的当天天气

    android 得到当前城市的当天的天气

    Android开发案例驱动教程 配套代码

    16.3 Android定位服务 430 16.3.1 开启定位服务 431 16.3.2 模拟测试 433 16.3.3 GPS与Google Map结合 435 16.4 案例重构 437 16.4.1 重构"定位查询"方法 438 16.4.2 重构"查询周围"方法 440 本章小结 443 ...

    Android天气预报实验报告

    Android天气预报实验报告模板 public class SetCityActivity extends Activity { //定义的一个自动定位的列表 private ListView gpsView; //定义的一个省份可伸缩性的列表 private ExpandableListView ...

    android api天气预报定位下拉刷新启动页

    程序功能实现了访问API、JSON数据解析、下拉刷新、定位城市、启动页加载等功能。初学安卓者可以参考一下。由于使用的是聚合的天气预报API,下载后不能直接使用,需要先去聚合后台(https://www.juhe.cn/)注册一个...

    Android最新资料以及源码

    共10个目标文件,读取中央气象台的天气预报API得到天气数据,由此扩展出Android天气预报源码。虽然获取天气时你首先要知道对应的城市码,有点麻烦,其它的如稳定性与 广阔性也是很一流的,它可以精确到县和区,然后...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得东南大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已...

    基于android的天气app软件

    2、实现gps定位,根据当前城市获得当天以及最近一周的天气信息显示 3、使用Jsoup框架抓取天气信息,解析json数据,展示天气信息 4、美观的界面,温和的主题颜色 5、适合于毕业生以及开发工作者参考 6、使用MVC+三层...

    RoundTrip:GPS定位仪,适用于Android 6.0+

    适用于Android 6.0+的GPS位置循环仪(要求API&gt; = 23)。 用法 安装APK,并确保允许开发者选项将模拟位置与RoundTrip一起使用。 进入应用程序后,为其授予所有必需的位置权限,并进行注册以添加和查看城市和位置。 ...

    获得GPS位置

    Android GPS 得到位置,转换城市街道等

    酣逗身边(Android版)---提供周边的生活信息

    酣逗身边是一款基于位置,利用综合定位技术进行周边深度生活信息服务的移动应用软件。软件主要服务于城市生活,旨在为用户快速提供位置及周边信息。用户可以利用酣逗身边轻松获得自己周围餐饮、宾馆、酒吧、超市、...

    天地图手机版 v3.1 安卓版.apk

    天地图(Android)V3.1版 更新内容: 1.在线导航功能全新上线,方便用户自驾出行; 2.驾车路线规划升级,途经路段更加明确; 3.地图增加3D俯视查看图层,地图浏览视角随意切换; 4.增加地图工具“二维码”,通过扫描...

    World Map Globe Edition 2 V14.5

    -能够与在线地图平铺系统集成,只需单击一次,包括OpenStreetMap、AerisWeather、Stamen、Carto、MapBox、Sputnik等,并具有渐进式渲染,允许在放大时获得更高的质量。 -脱机磁贴支持与磁贴下载助手。 -六边形...

    大众点评 v6.7.9

    适用系统:Android 2.2以上 开发者:大众点评网 更新时间:2014-12-18 0元吃喝玩乐,大众点评圣诞跨年大放送!约会聚餐、K歌、看电影、美甲、郊游、美发,统统不要钱!马上下载大众点评客户端,立即享受免费...

    360全景图制作软件造景师 v10.0.zip

    7、支持导入带有为经纬度信息图片:造景师支持导入带有经纬度信息的图片,并且可以在百度地图中自动定位当前场景位置。 8、支持全景图分享:造景师支持将拼合好的全景图分享到城市吧街景平台。 9、支持多种发布...

Global site tag (gtag.js) - Google Analytics