- 浏览: 186059 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
Allen_J_Will:
...
python学习,第四天笔记 -
大头K:
qindongliang1922 写道你用的啥IDE工具楼主
...
python学习,第三天笔记 -
qindongliang1922:
你用的啥IDE工具楼主
python学习,第三天笔记 -
大头K:
<div class="quote_title ...
基于百度地图实现的实时定位功能(含项目代码) -
hksfho:
你好,怎樣顯不坐標?
基于百度地图实现的实时定位功能(含项目代码)
这段时间经常接触百度地图API,每次用的时候都会重新下demo,确实浪费时间。今天有时候就整理一下代码。博文底部有项目代码链接。
以下贴出来的是百度的定位功能的实现:
先看看效果:
MyApplication.class:
MainActivity.class:
源代码下载:
http://download.csdn.net/detail/qq15989177612/6930569
以下贴出来的是百度的定位功能的实现:
先看看效果:
MyApplication.class:
package com.liucanwen.baidulocation; import android.app.Application; import android.content.Intent; import android.os.Process; import android.util.Log; import com.baidu.location.BDLocation; import com.baidu.location.BDLocationListener; import com.baidu.location.GeofenceClient; import com.baidu.location.LocationClient; import com.baidu.location.LocationClientOption; public class MyApplication extends Application { public LocationClient mLocationClient = null; public GeofenceClient mGeofenceClient; public MyLocationListenner myListener = new MyLocationListenner(); public static String TAG = "MyApplication"; private static MyApplication mInstance = null; @Override public void onCreate() { mInstance = this; mLocationClient = new LocationClient(this); /** * 项目的key,自己到官网申请 http://lbsyun.baidu.com/apiconsole/key */ mLocationClient.setAK("0zY5wx1STQSzyaNv4Tvr7z0R"); mLocationClient.registerLocationListener(myListener); mGeofenceClient = new GeofenceClient(this); super.onCreate(); Log.d(TAG, "... Application onCreate... pid=" + Process.myPid()); } public static MyApplication getInstance() { return mInstance; } /** * 停止定位 */ public void stopLocationClient() { if (mLocationClient != null && mLocationClient.isStarted()) { mLocationClient.stop(); } } /** * 发起定位 */ public void requestLocationInfo() { setLocationOption(); if (mLocationClient != null && !mLocationClient.isStarted()) { mLocationClient.start(); } if (mLocationClient != null && mLocationClient.isStarted()) { mLocationClient.requestLocation(); } } /** * 设置相关参数 */ private void setLocationOption() { LocationClientOption option = new LocationClientOption(); option.setOpenGps(true); // 打开gps option.setCoorType("bd09ll"); // 设置坐标类型 option.setServiceName("com.baidu.location.service_v2.9"); option.setPoiExtraInfo(true); option.setAddrType("all"); option.setPoiNumber(10); option.disableCache(true); mLocationClient.setLocOption(option); } /** * 监听函数,有更新位置的时候,格式化成字符串,输出到屏幕中 */ public class MyLocationListenner implements BDLocationListener { @Override public void onReceiveLocation(BDLocation location) { if (location == null) { sendBroadCast("定位失败!"); return; } sendBroadCast(location.getAddrStr()); } public void onReceivePoi(BDLocation poiLocation) { if (poiLocation == null) { sendBroadCast("定位失败!"); return; } sendBroadCast(poiLocation.getAddrStr()); } } /** * 得到发送广播 * @param address */ public void sendBroadCast(String address) { stopLocationClient(); Intent intent = new Intent(MainActivity.LOCATION_BCR); intent.putExtra("address", address); sendBroadcast(intent); } }
MainActivity.class:
package com.liucanwen.baidulocation; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class MainActivity extends Activity { private BroadcastReceiver broadcastReceiver; public static String LOCATION_BCR = "location_bcr"; private Button locBtn; private TextView locInfo; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initialize(); initializeViews(); initializeListeners(); } private void initialize() { registerBroadCastReceiver(); } private void initializeViews() { locBtn = (Button) findViewById(R.id.location); locInfo = (TextView) findViewById(R.id.location_info); } private void initializeListeners() { locBtn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { locInfo.setText("定位中..."); MyApplication.getInstance().requestLocationInfo(); } }); } /** * 注册一个广播,监听定位结果 */ private void registerBroadCastReceiver() { broadcastReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { String address = intent.getStringExtra("address"); locInfo.setText(address); } }; IntentFilter intentToReceiveFilter = new IntentFilter(); intentToReceiveFilter.addAction(LOCATION_BCR); registerReceiver(broadcastReceiver, intentToReceiveFilter); } @Override protected void onDestroy() { super.onDestroy(); unregisterReceiver(broadcastReceiver); } }
源代码下载:
http://download.csdn.net/detail/qq15989177612/6930569
发表评论
-
android studio 编译问题
2015-08-12 17:58 7191、今天在用AS直接调试安装应用的时候,发现安装的debug应 ... -
BASE64加密解密
2014-08-19 17:59 0import java.io.ByteArrayOutputS ... -
在EditText和TextView显示表情图片(类似QQ表情)
2014-08-04 13:25 1642通过重写EditText和TextView,在EditText ... -
java修改目录所有文件名
2014-07-15 13:03 1878前言: 一直遇到一个问题,android在打包的时候,有时会涉 ... -
webview清除cookie
2014-07-14 15:54 4202前言: 由于项目需要,webview需要与app进行交互,其实 ... -
按正方形裁切图片和图片加边框
2014-06-07 09:13 19071.按正方形裁切图片: /** * 按正方形裁切图片 ... -
解决部分android手机照片被系统自动旋转
2014-05-21 14:13 1799使用某星手机有为应用的图库添加图片时,发现照片已被旋转,APP ... -
关于拍完照或者保存图片,无法在相册上显示问题
2014-05-05 17:43 931场景:拍完照或者保存图片到SDCard时,无法马上在相册上显示 ... -
Universal-Image-Loader 内存占用
2014-04-30 23:24 1537前言:之前项目一直使用Universal-Image-Load ... -
Fragment already added 解决方法
2014-04-22 11:22 13179最近项目上遇到一个问题: 找了很久,尼玛终于找到方法解决 ... -
非官方调用新浪微博
2014-04-18 09:19 1908很多情况,我们都需要用户关注我们的官方微博,现在提供两种办法展 ... -
类似上下滚动切换广告牌效果实现
2014-04-18 06:39 0看到需求时,上下滚动切换,第一反应就是VerticalView ... -
关于刷新自定义View
2014-04-18 06:34 814因为项目需要,需要在自定义View可见之后再动态变化宽度。 ... -
保存网络图片到手机上
2014-04-16 12:00 950// 保存图片到手机端 public static bool ... -
ListView快速定位第一行
2014-04-15 16:23 1037if (Build.VERSION.SDK_INT < ... -
调用手机相机实现拍照、剪裁、保存图片到手机(含github源码地址)
2014-03-20 16:31 5943调用手机相机实现拍照、剪裁图片、并保存图片到手机 先看效果图 ... -
FragmentTabHost切换Fragment时避免UI重新加载
2014-03-12 14:27 4526用FragmentTabHost + Fragment 可以实 ... -
Gridview 去掉橙色点击响应效果
2014-03-12 11:19 942一行代码搞定: gridView.setSelector(ne ... -
如何在service里面弹出对话框
2014-03-10 00:03 3200先给一个需求:需要在service里面监听短信的接收,如果接收 ... -
ViewFlipper 3D旋转动画实现 界面切换
2014-03-08 00:46 1704先来看看效果: 简单介绍一下,两个界面,以水平中线旋转18 ...
相关推荐
这个"基于百度地图实现的定位功能.zip"包含了完整的源代码,为开发者提供了宝贵的参考资源,无论你是学生进行毕业设计,还是个人或公司进行项目开发,都能从中受益。 首先,我们需要了解Android平台上的百度地图SDK...
本文将深入探讨如何基于百度地图API实现定位功能,为用户提供精确的地理位置信息。 首先,百度地图API(Application Programming Interface)是百度提供的一套用于开发地图应用的接口工具,它允许开发者在自己的...
该资源是一个基于百度地图API开发的安卓应用程序项目源码,主要功能是实现定位服务。这个项目源码可以作为学生进行毕业设计的参考,也可以供程序员学习研究,甚至可用于小型公司快速构建新的定位功能项目。 首先,...
本项目聚焦于如何在Android应用中实现基于百度地图的定位功能,这涉及到多个技术点,包括百度地图API的使用、Android权限管理、定位服务的开启与监听,以及地图界面的展示与操作。 首先,要实现百度地图的定位功能...
这个压缩包“安卓Android源码——基于百度地图实现的定位功能.rar”提供了一个实例,展示了如何利用百度地图API在Android应用中实现精准的定位功能。下面将详细解释其中涉及的关键知识点。 首先,我们需要了解的是...
这个压缩包文件“安卓Andriod源码——基于百度地图实现的定位功能.zip”显然包含了实现这一功能的源代码示例。让我们深入探讨一下如何在Android中集成百度地图API并实现定位功能。 首先,我们需要在项目中引入百度...
本示例项目"Android高级应用源码-基于百度地图实现的定位功能.zip"提供了一个详细的学习资源,帮助开发者深入理解如何集成百度地图API来实现在Android应用中的定位服务。以下是这个项目所涉及的主要知识点: 1. **...
在本压缩包中,我们拥有一个小程序的源码,该源码主要实现了基于百度地图的定位功能。小程序是一种轻量级的应用程序,通常用于移动设备,无需下载安装即可使用,为用户提供便捷的服务。这个特定的小程序利用了百度...
这个压缩包文件“安卓Android源码——基于百度地图实现的定位功能.zip”很可能包含了一个完整的示例项目,展示了如何集成百度地图API并实现在移动设备上的定位。下面我们将深入探讨这个主题,讲解如何在Android应用...
本教程将详细介绍如何在Android应用程序中利用百度地图API实现精准的定位功能。以下是对这个主题的详细解析。 首先,我们需要了解安卓系统对定位服务的支持。Android系统提供了一个叫做Location API的框架,它允许...
在Android开发中,百度地图API提供了丰富的功能,包括定位、离线地图、测量以及运动轨迹绘制等。这些功能使得开发者可以构建出具有专业地理信息处理能力的应用。在使用百度地图API时,尤其对于Android 6.0及以上版本...
【标题】"基于VB的百度地图定位标注实例源码"是一个使用Visual Basic 6.0(VB6.0)开发的程序,它整合了百度地图API,能够在VB的窗体界面中显示实时的在线地图。这个实例的核心功能是允许用户在文本框中输入经纬度...
基于百度地图实现的基础定位功能的Android Studio项目,能获取到经纬度,以及具体的省份和城市,街道,也能判断是以什么样的方式,能将自己的位置显示在地图上。当然前提是将项目在真机上跑,在虚拟机上跑是没有效果...
我们将重点讨论如何在项目中配置百度地图框架,并实现基本的用户定位功能。 首先,为了在项目中使用百度地图,你需要在百度地图开放平台(http://lbsyun.baidu.com/)注册一个开发者账号,创建一个新的应用并获取到...
这个项目"可定位显示轨迹地图(基于百度地图)源代码"提供了一个实例,帮助开发者理解如何利用百度地图SDK来实现实时定位和轨迹绘制。 首先,我们要了解百度地图SDK。百度地图SDK为开发者提供了丰富的API接口,涵盖...
提供的压缩包`BaiduLoc_AndroidSDK_v7.6_Demo`应该是百度地图SDK的一个示例项目,包含了实现上述功能的代码示例,可以帮助开发者快速理解和集成定位功能。 通过以上步骤和代码示例,开发者可以有效地在Android应用...
在安卓平台上,开发一款基于百度地图API的定位软件可以实现高效、精准的地理位置服务。这款“秒定位精准”软件利用了百度地图强大的地理信息系统,为用户提供实时、准确的定位功能,尤其适合对安卓开发初学者进行...
总结,基于Android的百度地图导航定位系统结合了移动设备的便携性和百度地图的强大功能,为用户提供了一种实用的定位导航解决方案。通过深入研究其内部机制,开发者不仅可以提升自己的Android开发技能,还能对地图...
本项目源码"基于百度地图sdk的定位和地图显示项目源码"是一个典型的实例,它展示了如何在Android Studio环境中集成并运用百度地图服务。下面将详细解析这个项目的相关知识点。 首先,我们需要在项目中集成百度地图...