android 为什么百度地图定位失败总是定到上一次定位的地方?(部分手机会这样)

百度地图手机版如何进行我的位置定位?
时间: 17:16:42
来源:下载吧
编辑:jhao
百度手机地图Android版是由百度公司为您提供的一款应用,百度地图立志于成为您最贴心的全能出行助手。支持离线地图,节省流量。百度手机地图功能:1.时刻告诉你现在所处...
软件大小:16.9 MB
不知大家有没有使用过百度地图手机版我的位置定位功能?百度地图的位置定位功能很不错,我的位置定位让我们随时分享位置信息,可以通过这个位置定位功能让其他的好友都知道我们的具体所在位置,真是一个很实用的功能。百度地图手机版如何进行我的位置定位步骤:第一步:首先,我们手机上要下载安装好新版本的,打开百度地图,我们点击我的这个按钮,如下图红色箭头所示。第二步:进入以下图所示界面后,我们点击图中的更多工具第三步:看下图,选择位置共享这个选项。第四步:选择以后,我们可以看到两个选项共选择:一个是共享位置;一个是发起聚会,我们以共享位置为例子。第五步:点击以后,我们选择需要共享给的好友,然后邀请一下就可以了。好友一般都是通讯录里面的。第六步:如果是聚会的话,我们就点击上面的发起聚会,再选择聚会地点,选择好地点以后,再邀请好友们。PS:百度地图的位置定位功能比较适合我们对不熟悉的地方就行我的位置定位分享,我们可以直接通过位置定位让好友随时查看到。
喜欢这文章可以分享给您的朋友哦
百度地图怎么消除我的足迹记录。苹果事件后,大家对隐私越来越重视了。只...
百度地图怎么下载离线地图。百度地图是一个很好用的导航软件来的,帮你收...
百度地图使用技巧全攻略。百度地图相信很多人都在使用它。我们去到一个陌...
  高德地图和百度地图都是大家常用的地图导航软件,有的朋友就不知道高...
在我们的日常生活中,已经离不开手机导航软件。去一个陌生的地方,首先就...
百度地图安卓客户端10.8.0正式版怎么样?值得更新吗?据悉,百度官方今日...
微信聊天记录删除了怎么恢复?微信重装后聊天记录不见了怎么办?有时我们...
安卓(Android) x86是安装在Intel/AMD等PC平台上的安卓系统,也就是说不用...
2016年微信抢红包成了一项全民运动,不仅有好友发的红包,还有摇一摇的企...
iPhone6/iPhone6 plus无法连接app store详细解决办法步骤。iPhone6一出,...
苹果6(iPhone6、iPhone6 Plus)近来经常发生无法连接到APP Store或者下...
微信抢红包神器大行其道,大家抢红包抢的自然是不亦乐乎。现在微信团队终...
iPhone6/iPhone6 plus怎么设置自定义铃声。针对iPhone6、iPhone6 plus铃...
下载吧小编为大家更新的手机CPU天梯图(更新到2017年11月)。现在很多人...
微信聊天图片怎么保存 保存在哪个文件夹。现在很多人都在微信上传资料,...&>&android 百度地图定位当前位置及POI搜索(源码)
android 百度地图定位当前位置及POI搜索(源码)
上传大小:5.2MB
该资源主要参考本人博客http://blog.csdn.net/eastmount/article/details/
它是android使用V2_4_1版本显示百度地图,同时搜索城市定位到该城市地图,输入关键字能显示POI感兴趣的内容,并添加覆盖物标注出来,如KTV或北京的大学。同时包括定位当前位置,通过LocSDK中函数实现,免费资源希望对大家有所帮助~
综合评分:4
{%username%}回复{%com_username%}{%time%}\
/*点击出现回复框*/
$(".respond_btn").on("click", function (e) {
$(this).parents(".rightLi").children(".respond_box").show();
e.stopPropagation();
$(".cancel_res").on("click", function (e) {
$(this).parents(".res_b").siblings(".res_area").val("");
$(this).parents(".respond_box").hide();
e.stopPropagation();
/*删除评论*/
$(".del_comment_c").on("click", function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_invalid/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parents(".conLi").remove();
alert(data.msg);
$(".res_btn").click(function (e) {
var parentWrap = $(this).parents(".respond_box"),
q = parentWrap.find(".form1").serializeArray(),
resStr = $.trim(parentWrap.find(".res_area_r").val());
console.log(q);
//var res_area_r = $.trim($(".res_area_r").val());
if (resStr == '') {
$(".res_text").css({color: "red"});
$.post("/index.php/comment/do_comment_reply/", q,
function (data) {
if (data.succ == 1) {
var $target,
evt = e || window.
$target = $(evt.target || evt.srcElement);
var $dd = $target.parents('dd');
var $wrapReply = $dd.find('.respond_box');
console.log($wrapReply);
//var mess = $(".res_area_r").val();
var mess = resS
var str = str.replace(/{%header%}/g, data.header)
.replace(/{%href%}/g, 'http://' + window.location.host + '/user/' + data.username)
.replace(/{%username%}/g, data.username)
.replace(/{%com_username%}/g, data.com_username)
.replace(/{%time%}/g, data.time)
.replace(/{%id%}/g, data.id)
.replace(/{%mess%}/g, mess);
$dd.after(str);
$(".respond_box").hide();
$(".res_area_r").val("");
$(".res_area").val("");
$wrapReply.hide();
alert(data.msg);
}, "json");
/*删除回复*/
$(".rightLi").on("click", '.del_comment_r', function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_comment_del/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parent().parent().parent().parent().parent().remove();
$(e.target).parents('.res_list').remove()
alert(data.msg);
//填充回复
function KeyP(v) {
var parentWrap = $(v).parents(".respond_box");
parentWrap.find(".res_area_r").val($.trim(parentWrap.find(".res_area").val()));
评论共有57条
谢谢分享,学习了。
非常实用,感谢分享
实用性高,但是百度更新太快,这个版本有点低,部分代码还是可以参照滴。
综合评分:
积分/C币:5
VIP会员动态
热门资源标签
CSDN下载频道资源及相关规则调整公告V11.10
下载频道用户反馈专区
下载频道积分规则调整V1710.18
spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip
资源所需积分/C币
当前拥有积分
当前拥有C币
输入下载码
为了良好体验,不建议使用迅雷下载
android 百度地图定位当前位置及POI搜索(源码)
会员到期时间:
剩余下载个数:
剩余积分:0
为了良好体验,不建议使用迅雷下载
积分不足!
资源所需积分/C币
当前拥有积分
您可以选择
程序员的必选
绿色安全资源
资源所需积分/C币
当前拥有积分
当前拥有C币
为了良好体验,不建议使用迅雷下载
资源所需积分/C币
当前拥有积分
当前拥有C币
为了良好体验,不建议使用迅雷下载
资源所需积分/C币
当前拥有积分
当前拥有C币
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
无法举报自己的资源
你当前的下载分为234。
你还不是VIP会员
开通VIP会员权限,免积分下载
你下载资源过于频繁,请输入验证码
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
若举报审核通过,可返还被扣除的积分
被举报人:
请选择类型
资源无法下载 ( 404页面、下载失败、资源本身问题)
资源无法使用 (文件损坏、内容缺失、题文不符)
侵犯版权资源 (侵犯公司或个人版权)
虚假资源 (恶意欺诈、刷分资源)
含色情、危害国家安全内容
含广告、木马病毒资源
*投诉人姓名:
*投诉人联系方式:
*版权证明:
*详细原因:
android 百度地图定位当前位置及POI搜索(源码)百度地图定位失败,安卓改手机IP部分可以修复,还有不可以修复。这是什么原因,怎么能完全解决。_百度知道
百度地图定位失败,安卓改手机IP部分可以修复,还有不可以修复。这是什么原因,怎么能完全解决。
我有更好的答案
方法:1、检查手机是否有明显的碰撞痕迹,可能是由于手机进行了碰撞而导致手机的GPS损坏从而无法进行定位。有的人手机摔了之后无线网就不能用了,或者蓝牙不能开,都是因为手机碰撞造成的。2、进入百度地图的APP,检查是否是最新版本的APP手机应用,如果不是,请及时进行更新,如果是经常处在wifi环境下,可以勾选wifi环境下自动更新的选项。3、在手机的安全中心中,查看是否给了百度地图APP的权限,如果没有的话,可以打开,这样一来,手机授权百度地图GPS定位服务,从而使百度地图可以定位自己的位置。4、顺便检查一下自己下的百度地图APP是否是真正的官方授权的正版软件,最好去官网进行下载,要不然可能会下载到有木马病毒的垃圾或伪正版软件。5、如果按照以上的方法检查完毕之后,还是不能正常的使用百度地图,那只有最后一个检查的方法了,检查下自己的网络是否畅通,有无开启数据连接,要知道,没有网络的情况下,百度地图是不可能自己定位到你的位置的。
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。好记性不如烂笔头
Android 百度地图定位
最近在做一个两年前被搁置的项目,涉及到定位,但是有些功能已经用不了了,所以更新SDK又集成了一次,非常简单,这里只做入门级讲解,也很详细的。
1.打开,找到功能与服务,选择定位,点击Android 定位SDK(v7.5),然后这就是官方文档了。
2.然后注册登陆,创建应用,填写之后得到一个AK,以前是AppKey,一个意思。
a. 应用名称:开发者请自行定义,建议与应用名称一致,便于管理;
b. 应用类型:开发者请注意选择为Android SDK,选择其他类型,将导致所生成的AK不可用;(启用服务默认全部启用即可)
c. 填写SHA1和包名:这两个信息请开发者注意准确填写,它们是AK验证合法性的唯一依据。
SHA1获取方法:
打开Android Studio,进入Terminal工具,如下图所示:
输入命令行和密码,即可获取SHA1等信息。
命令行:keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey (注意目录选择、开发版本、发布版本等问题);
密码:原始密码一般为android,开发者根据实际情况填写。
包名大家应该知道怎么弄的吧。。
1.在文档的下方有一个相关下载 tab,解压之后如下图所示
2.然后把arm64-v8a、armeabi 和 BaiduLBS_Android.jar 三个文件拷到项目中的libs文件夹下
3.配置build.gradle文件,设置sourceSets
&meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="开发者申请的AK" &
&/meta-data&
5.配置权限和service
android:name="com.baidu.location.f" android:enabled="true" android:process=":remote"& &
android:name="android.permission.ACCESS_COARSE_LOCATION"&&
android:name="android.permission.ACCESS_FINE_LOCATION"&&
android:name="android.permission.ACCESS_WIFI_STATE"&&
android:name="android.permission.ACCESS_NETWORK_STATE"&&
android:name="android.permission.CHANGE_WIFI_STATE"&&
android:name="android.permission.READ_PHONE_STATE"&&
android:name="android.permission.WRITE_EXTERNAL_STORAGE"&&
android:name="android.permission.INTERNET" /&
android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"&&
ok,到这里就配置完了。
以service为例
1.初始化LocationClient类,
2.并注册监听MyLocationListener,
3.然后通过LocationClientOption 来配置一些参数选项,
4.在MyLocationListener 的回调中,可以通过BDLocation 对象获取定位信息
public class MyLocationService extends Service {
private LocationClient mLocationClient = null;
private BDLocationListener myListener = new MyLocationListener();
public void onCreate() {
LocationClientOption option = new LocationClientOption();
option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);
option.setCoorType("bd09ll");
int span = 1000 * 300;
option.setScanSpan(span);
option.setOpenGps(true);
option.setIsNeedAddress(true);
mLocationClient = new LocationClient(getApplicationContext());
mLocationClient.setLocOption(option);
mLocationClient.registerLocationListener(myListener);
mLocationClient.start();
public int onStartCommand(Intent intent, int flags, int startId) {
return super.onStartCommand(intent, flags, startId);
public IBinder onBind(Intent intent) {
return null;
public class MyLocationListener implements BDLocationListener {
* 定位成功之后回调的方法
public void onReceiveLocation(BDLocation location) {
LogUtil.i("经纬度===", String.valueOf(location.getLongitude()) + "---" + String.valueOf(location.getLatitude()));
LogUtil.i("省市区==="+location.getProvince()+location.getCity()+location.getDistrict());
其它参数:
double latitude = location.getLatitude();
double longitude = location.getLongitude();
float radius = location.getRadius();
String addr = location.getAddrStr();
String country = location.getCountry();
String province = location.getProvince();
String city = location.getCity();
String district = location.getDistrict();
String street = location.getStreet();
ok,简单的集成使用就这么简单,也是比较详细的。
没有更多推荐了,Android地图定位-百度地图上定位自己所在的位置
二 主要代码
BaseActivity.java
package com.itheima.baidumap74;
import com.baidu.mapapi.map.BaiduM
import com.baidu.mapapi.map.MapStatusU
import com.baidu.mapapi.map.MapStatusUpdateF
import com.baidu.mapapi.map.MapV
import com.baidu.mapapi.map.UiS
import com.baidu.mapapi.model.LatL
import com.itheima.baidumap74.util.U
import android.app.A
import android.os.B
import android.util.L
import android.view.G
import android.widget.T
public abstract class BaseActivity extends Activity {
private static final String TAG = "BaseActivity";
/** 黑马坐标(北京市海淀区东北旺南路45号)*/
protected LatLng hmPos = new LatLng(40.6.30361);
/** 传智坐标 */
protected LatLng czPos = new LatLng(40..349902);
/** 天安门坐标 */
protected LatLng tamPos = new LatLng(39..403963);
protected MapView mapV
protected BaiduMap baiduM
// 这里加final是为了不让子类覆盖,原因是为了预防这里的一些类还没初始化的时候就被子类调用
protected final void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取地图控件引用
mapView = (MapView) findViewById(R.id.bmapView);
baiduMap = mapView.getMap(); // 获取地图控制器
// 1. 隐藏缩放按钮、比例尺
// mapView.showScaleControl(false); // 隐藏比例按钮,默认是显示的
// mapView.showZoomControls(false); // 隐藏缩放按钮,默认是显示的
// 2. 获取获取最小(3)、最大缩放级别(20)
float maxZoomLevel = baiduMap.getMaxZoomLevel(); // 获取地图最大缩放级别
float minZoomLevel = baiduMap.getMinZoomLevel(); // 获取地图最小缩放级别
Log.i(TAG, "minZoomLevel = " + minZoomLevel + ", maxZoomLevel" + maxZoomLevel);
// 3. 设置地图中心点为黑马
MapStatusUpdate mapStatusUpdate = MapStatusUpdateFactory.newLatLng(hmPos);
baiduMap.setMapStatus(mapStatusUpdate);
// 4. 设置地图缩放为15
mapStatusUpdate = MapStatusUpdateFactory.zoomTo(15);
baiduMap.setMapStatus(mapStatusUpdate);
// 6. 获取地图Ui控制器:隐藏指南针
// UiSettings uiSettings = baiduMap.getUiSettings();
// uiSettings.setCompassEnabled(false); //
不显示指南针
/** 这个方法让子类实现 */
public abstract void init();
* 在屏幕中央显示一个Toast
* @param text
public void showToast(CharSequence text) {
Utils.showToast(this, text);
protected void onDestroy() {
super.onDestroy();
//在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理
mapView.onDestroy();
protected void onResume() {
super.onResume();
//在activity执行onResume时执行mMapView. onResume (),实现地图生命周期管理
mapView.onResume();
protected void onPause() {
super.onPause();
//在activity执行onPause时执行mMapView. onPause (),实现地图生命周期管理
mapView.onPause();
}CircelOverlayActivity.java
package com.itheima.baidumap74;
import com.baidu.mapapi.map.CircleO
import com.baidu.mapapi.map.S
public class CircelOverlayActivity extends BaseActivity {
public void init() {
CircleOptions options = new CircleOptions(); // 创建一个圆形覆盖物的参数
options.center(hmPos) // 圆心
.radius(1000) // 半径
.stroke(new Stroke(20, 0x55FF0000))// 线条宽度、颜色
.fillColor(0x5500FF00); // 圆的填充颜色
baiduMap.addOverlay(options); // 添加一个覆盖物
DemoListActivity.java
package com.itheima.baidumap74;
import com.baidu.mapapi.SDKI
import com.itheima.baidumap74.util.U
import android.app.ListA
import android.content.BroadcastR
import android.content.C
import android.content.I
import android.content.IntentF
import android.os.B
import android.view.V
import android.widget.ArrayA
import android.widget.ListV
public class DemoListActivity extends ListActivity {
private BroadcastR
private ClassAndName[] datas = {
new ClassAndName(HelloBaiduMapActivity.class, "HelloBaiduMap"),
new ClassAndName(MapLayerActivity.class, "地图图层"),
new ClassAndName(CircelOverlayActivity.class, "圆形覆盖物"),
new ClassAndName(TextOverlayActivity.class, "文字覆盖物"),
new ClassAndName(MarkerOverlayActivity.class, "标志覆盖物"),
new ClassAndName(SearchInBoundActivity.class, "在范围内搜索"),
new ClassAndName(SearchInCityActivity.class, "在城市内搜索"),
new ClassAndName(SearchInNearbyActivity.class, "在周边内搜索"),
new ClassAndName(DrivingSearchActivity.class, "驾车路线搜索"),
new ClassAndName(TransitSearchActivity.class, "换乘路线搜索"),
new ClassAndName(WalkingSearchActivity.class, "步行路线搜索"),
new ClassAndName(LocationActivity.class, "定位"),
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
registerSDKCheckReceiver();
ArrayAdapter&ClassAndName& adapter =
new ArrayAdapter&DemoListActivity.ClassAndName&(this, android.R.layout.simple_list_item_1, datas);
setListAdapter(adapter);
protected void onListItemClick(ListView l, View v, int position, long id) {
// 取出单击位置的ClassAndName
ClassAndName classAndName = (ClassAndName) l.getItemAtPosition(position);
startActivity(new Intent(this, classAndName.clazz));
class ClassAndName {
/** 用于保存Activity的字节码 */
public Class&?&
/** 用于保存Activity对应的名字 */
public ClassAndName(Class&?& cls, String name) {
this.clazz =
this.name =
public String toString() {
private void registerSDKCheckReceiver() {
receiver = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (SDKInitializer.SDK_BROADCAST_ACTION_STRING_NETWORK_ERROR.equals(action)) {
Utils.showToast(DemoListActivity.this, "网络错误");
} else if (SDKInitializer.SDK_BROADTCAST_ACTION_STRING_PERMISSION_CHECK_ERROR.equals(action)) {
Utils.showToast(DemoListActivity.this, "key验证失败");
IntentFilter filter = new IntentFilter();
// 监听网络错误
filter.addAction(SDKInitializer.SDK_BROADCAST_ACTION_STRING_NETWORK_ERROR);
// 监听百度地图sdk 的key是否正确
filter.addAction(SDKInitializer.SDK_BROADTCAST_ACTION_STRING_PERMISSION_CHECK_ERROR);
registerReceiver(receiver, filter);
protected void onDestroy() {
unregisterReceiver(receiver);
super.onDestroy();
}DrivingSearchActivity.javapackage com.itheima.baidumap74;
import java.util.ArrayL
import java.util.L
import com.baidu.mapapi.overlayutil.DrivingRouteO
import com.baidu.mapapi.search.route.DrivingRouteL
import com.baidu.mapapi.search.route.DrivingRoutePlanO
import com.baidu.mapapi.search.route.DrivingRouteR
import com.baidu.mapapi.search.route.PlanN
import com.baidu.mapapi.search.route.TransitRouteR
import com.baidu.mapapi.search.route.WalkingRouteR
public class DrivingSearchActivity extends RoutePlanSearchBaseActivity {
public void routePlanSearchInit() {
routePlanSearch.drivingSearch(getSearchParams());
private DrivingRoutePlanOption getSearchParams() {
DrivingRoutePlanOption params = new DrivingRoutePlanOption();
List&PlanNode& nodes = new ArrayList&PlanNode&();
nodes.add(PlanNode.withCityNameAndPlaceName("北京市", "天安门"));
params.from(PlanNode.withLocation(hmPos)); // 设置起点
params.passBy(nodes);
// 设置途经点
params.to(PlanNode.withLocation(czPos)); // 设置终点
/** 获取驾车搜索结果的回调方法 */
public void onGetDrivingRouteResult(DrivingRouteResult result) {
DrivingRouteOverlay overlay = new DrivingRouteOverlay(baiduMap);
baiduMap.setOnMarkerClickListener(overlay);
List&DrivingRouteLine& routeLines = result.getRouteLines(); // 获取到所有的搜索路线,最优化的路线会在集合的前面
overlay.setData(routeLines.get(0)); // 把搜索结果设置到覆盖物
overlay.addToMap();
// 把搜索结果添加到地图
overlay.zoomToSpan();
// 把搜索结果在一个屏幕内显示完
/** 获取换乘(公交、地铁)搜索结果的回调方法 */
public void onGetTransitRouteResult(TransitRouteResult result) {
/** 获取步行搜索结果的回调方法 */
public void onGetWalkingRouteResult(WalkingRouteResult result) {
HelloBaiduMapActivity.java
package com.itheima.baidumap74;
import android.util.L
import android.view.KeyE
import com.baidu.mapapi.map.MapS
import com.baidu.mapapi.map.MapStatusU
import com.baidu.mapapi.map.MapStatusUpdateF
public class HelloBaiduMapActivity extends BaseActivity {
private static final String TAG = "HelloBaiduMapActivity";
public void init() {
public boolean onKeyDown(int keyCode, KeyEvent event) {
// 5. 更新地图状态
MapStatusUpdate mapStatusUpdate =
switch (keyCode) {
case KeyEvent.KEYCODE_1:
mapStatusUpdate = MapStatusUpdateFactory.zoomOut();
case KeyEvent.KEYCODE_2:
mapStatusUpdate = MapStatusUpdateFactory.zoomIn();
case KeyEvent.KEYCODE_3:
3) 旋转(0 ~ 360),每次在原来的基础上再旋转30度
MapStatus currentMapStatus = baiduMap.getMapStatus(); // 获取地图当前的状态
float rotate = currentMapStatus.rotate + 30;
Log.i(TAG, "rotate = " + rotate);
MapStatus mapStatus = new MapStatus.Builder().rotate(rotate).build();
mapStatusUpdate = MapStatusUpdateFactory.newMapStatus(mapStatus);
case KeyEvent.KEYCODE_4:
4) 俯仰(0 ~ -45),每次在原来的基础上再俯仰-5度
currentMapStatus = baiduMap.getMapStatus(); // 获取地图当前的状态
float overlook = currentMapStatus.overlook - 5;
Log.i(TAG, "overlook = " + overlook);
mapStatus = new MapStatus.Builder().overlook(overlook).build();
mapStatusUpdate = MapStatusUpdateFactory.newMapStatus(mapStatus);
case KeyEvent.KEYCODE_5:
mapStatusUpdate = MapStatusUpdateFactory.newLatLng(czPos);
baiduMap.animateMapStatus(mapStatusUpdate, 2000);
return super.onKeyDown(keyCode, event);
baiduMap.setMapStatus(mapStatusUpdate);
return super.onKeyDown(keyCode, event);
LocationActivity.java
package com.itheima.baidumap74;
import java.util.L
import android.util.L
import android.view.KeyE
import com.baidu.location.BDL
import com.baidu.location.BDLocationL
import com.baidu.location.LocationC
import com.baidu.location.LocationClientO
import com.baidu.location.LocationClientOption.LocationM
import com.baidu.location.P
import com.baidu.mapapi.map.BitmapD
import com.baidu.mapapi.map.BitmapDescriptorF
import com.baidu.mapapi.map.MyLocationC
import com.baidu.mapapi.map.MyLocationD
public class LocationActivity extends BaseActivity {
public LocationClient mLocationClient =
public BDLocationListener myListener = new MyLocationListener();
public class MyLocationListener implements BDLocationListener {
// 在这个方法里面接收定位结果
public void onReceiveLocation(BDLocation location) {
if (location != null) {
MyLocationData.Builder builder = new MyLocationData.Builder();
builder.accuracy(location.getRadius());
// 设置精度
builder.direction(location.getDirection()); // 设置方向
builder.latitude(location.getLatitude()); // 设置纬度
builder.longitude(location.getLongitude()); // 设置经度
MyLocationData locationData = builder.build();
baiduMap.setMyLocationData(locationData); // 把定位数据显示到地图上
//Receive Location
StringBuffer sb = new StringBuffer(256);
sb.append("time : ");
sb.append(location.getTime());
sb.append("\nerror code : ");
sb.append(location.getLocType());
sb.append("\nlatitude : ");
sb.append(location.getLatitude());
sb.append("\nlontitude : ");
sb.append(location.getLongitude());
sb.append("\nradius : ");
sb.append(location.getRadius());
if (location.getLocType() == BDLocation.TypeGpsLocation){// GPS定位结果
sb.append("\nspeed : ");
sb.append(location.getSpeed());// 单位:公里每小时
sb.append("\nsatellite : ");
sb.append(location.getSatelliteNumber());
sb.append("\nheight : ");
sb.append(location.getAltitude());// 单位:米
sb.append("\ndirection : ");
sb.append(location.getDirection());// 单位度
sb.append("\naddr : ");
sb.append(location.getAddrStr());
sb.append("\ndescribe : ");
sb.append("gps定位成功");
} else if (location.getLocType() == BDLocation.TypeNetWorkLocation){// 网络定位结果
sb.append("\naddr : ");
sb.append(location.getAddrStr());
//运营商信息
sb.append("\noperationers : ");
sb.append(location.getOperators());
sb.append("\ndescribe : ");
sb.append("网络定位成功");
} else if (location.getLocType() == BDLocation.TypeOffLineLocation) {// 离线定位结果
sb.append("\ndescribe : ");
sb.append("离线定位成功,离线定位结果也是有效的");
} else if (location.getLocType() == BDLocation.TypeServerError) {
sb.append("\ndescribe : ");
sb.append("服务端网络定位失败,可以反馈IMEI号和大体定位时间到loc-,会有人追查原因");
} else if (location.getLocType() == BDLocation.TypeNetWorkException) {
sb.append("\ndescribe : ");
sb.append("网络不同导致定位失败,请检查网络是否通畅");
} else if (location.getLocType() == BDLocation.TypeCriteriaException) {
sb.append("\ndescribe : ");
sb.append("无法获取有效定位依据导致定位失败,一般是由于手机的原因,处于飞行模式下一般会造成这种结果,可以试着重启手机");
sb.append("\nlocationdescribe : ");
sb.append(location.getLocationDescribe());// 位置语义化信息
List&Poi& list = location.getPoiList();// POI数据
if (list != null) {
sb.append("\npoilist size = : ");
sb.append(list.size());
for (Poi p : list) {
sb.append("\npoi= : ");
sb.append(p.getId() + " " + p.getName() + " " + p.getRank());
Log.i("BaiduLocationApiDem", sb.toString());
public void init() {
mLocationClient = new LocationClient(getApplicationContext());
//声明LocationClient类
mLocationClient.registerLocationListener(myListener);
//注册监听函数
initLocation();
baiduMap.setMyLocationEnabled(true); // 开启定位图层
setMyLocationConfigeration(MyLocationConfiguration.LocationMode.COMPASS);
mLocationClient.start(); // 开始定位
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_1: // 罗盘态,显示定位方向圈,保持定位图标在地图中心
setMyLocationConfigeration(MyLocationConfiguration.LocationMode.COMPASS);
case KeyEvent.KEYCODE_2: // 跟随态,保持定位图标在地图中心
setMyLocationConfigeration(MyLocationConfiguration.LocationMode.FOLLOWING);
case KeyEvent.KEYCODE_3: // 普通态: 更新定位数据时不对地图做任何操作
setMyLocationConfigeration(MyLocationConfiguration.LocationMode.NORMAL);
return super.onKeyDown(keyCode, event);
/** 设置定位图层的配置 */
private void setMyLocationConfigeration(
MyLocationConfiguration.LocationMode mode) {
boolean enableDirection = // 设置允许显示方向
BitmapDescriptor customMarker = BitmapDescriptorFactory.fromResource(R.drawable.icon_geo); // 自定义定位的图标
MyLocationConfiguration config = new MyLocationConfiguration(mode, enableDirection, customMarker);
baiduMap.setMyLocationConfigeration(config);
protected void onDestroy() {
mLocationClient.stop();
// 停止定位
super.onDestroy();
private void initLocation(){
LocationClientOption option = new LocationClientOption();
option.setLocationMode(LocationMode.Hight_Accuracy);//可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
option.setCoorType("bd09ll");//可选,默认gcj02,设置返回的定位结果坐标系
int span= 5000;
option.setScanSpan(span);//可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
option.setIsNeedAddress(true);//可选,设置是否需要地址信息,默认不需要
option.setOpenGps(true);//可选,默认false,设置是否使用gps
option.setLocationNotify(true);//可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果
option.setIsNeedLocationDescribe(true);//可选,默认false,设置是否需要位置语义化结果,可以在BDLocation.getLocationDescribe里得到,结果类似于“在北京天安门附近”
option.setIsNeedLocationPoiList(true);//可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
option.setIgnoreKillProcess(false);//可选,默认false,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认杀死
option.SetIgnoreCacheException(false);//可选,默认false,设置是否收集CRASH信息,默认收集
option.setEnableSimulateGps(false);//可选,默认false,设置是否需要过滤gps仿真结果,默认需要
mLocationClient.setLocOption(option);
MapLayerActivity.java
package com.itheima.baidumap74;
import com.baidu.mapapi.map.BaiduM
import android.view.KeyE
public class MapLayerActivity extends BaseActivity {
public void init() {
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_1:
// 显示普通地图
baiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL);
baiduMap.setTrafficEnabled(false);
case KeyEvent.KEYCODE_2:
// 显示卫星图
baiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);
baiduMap.setTrafficEnabled(false);
case KeyEvent.KEYCODE_3:
baiduMap.setTrafficEnabled(true);
return super.onKeyDown(keyCode, event);
MarkerOverlayActivity.javapackage com.itheima.baidumap74;
import android.view.V
import android.widget.TextV
import com.baidu.mapapi.map.BaiduMap.OnMarkerClickL
import com.baidu.mapapi.map.BaiduMap.OnMarkerDragL
import com.baidu.mapapi.map.BitmapD
import com.baidu.mapapi.map.BitmapDescriptorF
import com.baidu.mapapi.map.MapViewLayoutP
import com.baidu.mapapi.map.MapViewLayoutParams.ELayoutM
import com.baidu.mapapi.map.M
import com.baidu.mapapi.map.MarkerO
import com.baidu.mapapi.model.LatL
public class MarkerOverlayActivity extends BaseActivity {
private TextView tv_
public void init() {
initMarker();
baiduMap.setOnMarkerClickListener(mOnMarkerClickListener);
baiduMap.setOnMarkerDragListener(mOnMarkerDragListener);
/** 标志拖动监听器 */
OnMarkerDragListener mOnMarkerDragListener = new OnMarkerDragListener() {
/** 标志开始拖动 */
public void onMarkerDragStart(Marker marker) {
mapView.updateViewLayout(pop, createLayoutParams(marker.getPosition()));
/** 标志拖动结束 */
public void onMarkerDragEnd(Marker marker) {
mapView.updateViewLayout(pop, createLayoutParams(marker.getPosition()));
/** 标志正在拖动 */
public void onMarkerDrag(Marker marker) {
mapView.updateViewLayout(pop, createLayoutParams(marker.getPosition()));
OnMarkerClickListener mOnMarkerClickListener = new OnMarkerClickListener() {
public boolean onMarkerClick(Marker marker) {
// 显示一个泡泡
if (pop == null) {
pop = View.inflate(MarkerOverlayActivity.this, R.layout.pop, null);
tv_title = (TextView) pop.findViewById(R.id.tv_title);
mapView.addView(pop, createLayoutParams(marker.getPosition()));
mapView.updateViewLayout(pop, createLayoutParams(marker.getPosition()));
tv_title.setText(marker.getTitle());
/** 初始化标志 */
private void initMarker() {
MarkerOptions options = new MarkerOptions();
BitmapDescriptor icon = BitmapDescriptorFactory.fromResource(R.drawable.icon_eat);
options.position(hmPos)
.title("黑马")
.icon(icon)
.draggable(true); // 设置图标可以拖动
baiduMap.addOverlay(options);
// 添加一个向北的标志
options = new MarkerOptions().icon(icon)
.title("向北")
.position(new LatLng(hmPos.latitude + 0.001, hmPos.longitude))
.draggable(true);
baiduMap.addOverlay(options);
// 添加一个向东的标志
options = new MarkerOptions().icon(icon)
.title("向东")
.position(new LatLng(hmPos.latitude, hmPos.longitude + 0.001))
.draggable(true);
baiduMap.addOverlay(options);
// 添加一个向西南的标志
options = new MarkerOptions().icon(icon)
.title("向西南")
.position(new LatLng(hmPos.latitude - 0.001, hmPos.longitude - 0.001))
.draggable(true);
baiduMap.addOverlay(options);
* 创建一个布局参数
* @param position
private MapViewLayoutParams createLayoutParams(LatLng position) {
MapViewLayoutParams.Builder buidler = new MapViewLayoutParams.Builder();
buidler.layoutMode(ELayoutMode.mapMode); // 指定坐标类型为经纬度
buidler.position(position);
// 设置标志的位置
buidler.yOffset(-25);
// 设置View往上偏移
MapViewLayoutParams params = buidler.build();
MyApplication.javapackage com.itheima.baidumap74;
import android.app.A
import com.baidu.mapapi.SDKI
public class MyApplication extends Application {
public void onCreate() {
//在使用SDK各组件之前初始化context信息,传入ApplicationContext
//注意该方法要再setContentView方法之前实现
SDKInitializer.initialize(getApplicationContext());
PoiSearchBaseActivity.javapackage com.itheima.baidumap74;
import com.baidu.mapapi.overlayutil.PoiO
import com.baidu.mapapi.search.core.PoiI
import com.baidu.mapapi.search.core.SearchR
import com.baidu.mapapi.search.poi.OnGetPoiSearchResultL
import com.baidu.mapapi.search.poi.PoiR
import com.baidu.mapapi.search.poi.PoiS
public abstract class PoiSearchBaseActivity extends BaseActivity implements OnGetPoiSearchResultListener{
protected PoiSearch poiS
protected PoiOverlay poiO
public final void init() {
// 因为其它搜索也需要这个实例,所以放在父类初始,这样的话子类就不需要再实例化
poiSearch = PoiSearch.newInstance();
poiSearch.setOnGetPoiSearchResultListener(this);
poiOverlay = new PoiOverlay(baiduMap) {
public boolean onPoiClick(int index) {
return PoiSearchBaseActivity.this.onPoiClick(index);
baiduMap.setOnMarkerClickListener(poiOverlay);
poiSearchInit();
* 生成这个方法,是为了让子类可以覆盖
* @param index
public boolean onPoiClick(int index) {
PoiInfo poiInfo = poiOverlay.getPoiResult().getAllPoi().get(index);
showToast(poiInfo.name + ", " + poiInfo.address);
/** poi搜索的初始化代码写在这个方法 */
public abstract void poiSearchInit();
// 因为其它搜索结果的处理都是相同的,所以放在父类
/** 获取兴趣点信息 */
public void onGetPoiResult(PoiResult result) {
if (result == null || result.error != SearchResult.ERRORNO.NO_ERROR) {
showToast("没有搜索到结果");
poiOverlay.setData(result); // 把数据设置给覆盖物
poiOverlay.addToMap();
// 把所有的数据的变成覆盖添加到BaiduMap
poiOverlay.zoomToSpan(); // 把所有的搜索结果在一个屏幕内显示出来
RoutePlanSearchBaseActivity.javapackage com.itheima.baidumap74;
import com.baidu.mapapi.search.route.OnGetRoutePlanResultL
import com.baidu.mapapi.search.route.RoutePlanS
public abstract class RoutePlanSearchBaseActivity extends BaseActivity implements OnGetRoutePlanResultListener {
protected RoutePlanSearch routePlanS
public void init() {
routePlanSearch = RoutePlanSearch.newInstance();
routePlanSearch.setOnGetRoutePlanResultListener(this);
routePlanSearchInit();
/** 路径搜索初化代码写在这个方法 中*/
public abstract void routePlanSearchInit();
SearchInBoundActivity.javapackage com.itheima.baidumap74;
import com.baidu.mapapi.model.LatL
import com.baidu.mapapi.model.LatLngB
import com.baidu.mapapi.search.poi.PoiBoundSearchO
import com.baidu.mapapi.search.poi.PoiDetailR
public class SearchInBoundActivity extends PoiSearchBaseActivity {
public void poiSearchInit() {
poiSearch.searchInBound(getSearchParams());
private PoiBoundSearchOption getSearchParams() {
PoiBoundSearchOption params = new PoiBoundSearchOption();
// 指定搜索范围,由一个西南点和一个东北点组成的范围
LatLngBounds bounds = new LatLngBounds.Builder().include(new LatLng(40..302072))
.include(new LatLng(40..304317)).build();
params.bound(bounds); // 指定搜索范围
params.keyword("加油站"); // 指定搜索什么内容
/** 获取兴趣点详情信息 */
public void onGetPoiDetailResult(PoiDetailResult result) {
SearchInCityActivity.javapackage com.itheima.baidumap74;
import android.view.KeyE
import com.baidu.mapapi.search.core.PoiI
import com.baidu.mapapi.search.core.SearchR
import com.baidu.mapapi.search.poi.PoiCitySearchO
import com.baidu.mapapi.search.poi.PoiDetailR
import com.baidu.mapapi.search.poi.PoiDetailSearchO
public class SearchInCityActivity extends PoiSearchBaseActivity {
private int pageN
public void poiSearchInit() {
poiSearch.searchInCity(getSearchParams());
public boolean onPoiClick(int index) {
// 当点击一个搜索出来的兴趣点的时候,再去搜索更详细的内容
PoiInfo poiInfo = poiOverlay.getPoiResult().getAllPoi().get(index);
poiSearch.searchPoiDetail(getSearchDetailParams(poiInfo.uid));
private PoiDetailSearchOption getSearchDetailParams(String poiUid) {
PoiDetailSearchOption params = new PoiDetailSearchOption();
params.poiUid(poiUid);
private PoiCitySearchOption getSearchParams() {
PoiCitySearchOption params = new PoiCitySearchOption();
params.city("北京");
// 指定在哪个城市内进行搜索
params.keyword("加油站");
// 指定搜索的是什么内容
params.pageCapacity(10); // 设置一页获取10条数据
params.pageNum(pageNum); // 指定获取哪一页
/** 获取到详情信息的回调方法 */
public void onGetPoiDetailResult(PoiDetailResult result) {
if (result == null || result.error != SearchResult.ERRORNO.NO_ERROR) {
showToast("没有搜索到详情信息");
showToast(result.getShopHours() + ", " + result.getTelephone());
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_1) {
// 获取下一页数据
pageNum++;
poiSearch.searchInCity(getSearchParams());
return super.onKeyDown(keyCode, event);
SearchInNearbyActivity.javapackage com.itheima.baidumap74;
import com.baidu.mapapi.search.poi.PoiDetailR
import com.baidu.mapapi.search.poi.PoiNearbySearchO
* 在周边搜索
* @author dzl
public class SearchInNearbyActivity extends PoiSearchBaseActivity {
public void poiSearchInit() {
poiSearch.searchNearby(getSearchParams());
private PoiNearbySearchOption getSearchParams() {
PoiNearbySearchOption params = new PoiNearbySearchOption();
params.location(hmPos); // 指定在哪个位置搜索
params.radius(1000); // 指定搜索范围
params.keyword("建设银行"); // 指定搜索的内容
/** 获取兴趣点详情信息 */
public void onGetPoiDetailResult(PoiDetailResult result) {
TextOverlayActivity.java
package com.itheima.baidumap74;
import com.baidu.mapapi.map.TextO
public class TextOverlayActivity extends BaseActivity {
public void init() {
TextOptions options = new TextOptions();
options.position(hmPos)
.text("黑马程序员")
// 文字内容
.fontSize(20)
// 文字大小
.fontColor(0XFF000000) // 文字颜色
.bgColor(0X55FF0000) // 背景颜色
.rotate(30);
baiduMap.addOverlay(options);
TransitSearchActivity.javapackage com.itheima.baidumap74;
import java.util.L
import com.baidu.mapapi.overlayutil.TransitRouteO
import com.baidu.mapapi.search.route.DrivingRouteR
import com.baidu.mapapi.search.route.PlanN
import com.baidu.mapapi.search.route.TransitRouteL
import com.baidu.mapapi.search.route.TransitRoutePlanO
import com.baidu.mapapi.search.route.TransitRoutePlanOption.TransitP
import com.baidu.mapapi.search.route.TransitRouteR
import com.baidu.mapapi.search.route.WalkingRouteR
* 换乘路线搜索(公交、地铁)
* @author dzl
public class TransitSearchActivity extends RoutePlanSearchBaseActivity {
public void routePlanSearchInit() {
routePlanSearch.transitSearch(getSearchParams());
private TransitRoutePlanOption getSearchParams() {
TransitRoutePlanOption params = new TransitRoutePlanOption();
params.city("北京"); // 设置在哪个城市内搜索
params.policy(TransitPolicy.EBUS_TIME_FIRST);// 设置策略为:时间优先
params.from(PlanNode.withLocation(hmPos)); // 设置起点
params.to(PlanNode.withLocation(czPos)); // 设置终点
/** 获取驾车搜索结果的回调方法 */
public void onGetDrivingRouteResult(DrivingRouteResult result) {
/** 获取换乘(公交、地铁)搜索结果的回调方法 */
public void onGetTransitRouteResult(TransitRouteResult result) {
TransitRouteOverlay overlay = new TransitRouteOverlay(baiduMap);
baiduMap.setOnMarkerClickListener(overlay);
List&TransitRouteLine& routeLines = result.getRouteLines(); // 获取到所有的搜索路线,最优化的路线会在集合的前面
overlay.setData(routeLines.get(0)); // 把搜索结果设置到覆盖物
overlay.addToMap();
// 把搜索结果添加到地图
overlay.zoomToSpan();
// 把搜索结果在一个屏幕内显示完
/** 获取步行搜索结果的回调方法 */
public void onGetWalkingRouteResult(WalkingRouteResult result) {
WalkingSearchActivity.java
package com.itheima.baidumap74;
import java.util.L
import com.baidu.mapapi.overlayutil.TransitRouteO
import com.baidu.mapapi.overlayutil.WalkingRouteO
import com.baidu.mapapi.search.route.DrivingRouteR
import com.baidu.mapapi.search.route.PlanN
import com.baidu.mapapi.search.route.TransitRouteL
import com.baidu.mapapi.search.route.TransitRoutePlanO
import com.baidu.mapapi.search.route.WalkingRouteL
import com.baidu.mapapi.search.route.TransitRoutePlanOption.TransitP
import com.baidu.mapapi.search.route.TransitRouteR
import com.baidu.mapapi.search.route.WalkingRoutePlanO
import com.baidu.mapapi.search.route.WalkingRouteR
* 步行路线搜索
* @author dzl
public class WalkingSearchActivity extends RoutePlanSearchBaseActivity {
public void routePlanSearchInit() {
routePlanSearch.walkingSearch(getSearchParams());
private WalkingRoutePlanOption getSearchParams() {
WalkingRoutePlanOption params = new WalkingRoutePlanOption();
params.from(PlanNode.withLocation(hmPos)); // 设置起点
params.to(PlanNode.withLocation(czPos)); // 设置终点
/** 获取驾车搜索结果的回调方法 */
public void onGetDrivingRouteResult(DrivingRouteResult result) {
/** 获取换乘(公交、地铁)搜索结果的回调方法 */
public void onGetTransitRouteResult(TransitRouteResult result) {
/** 获取步行搜索结果的回调方法 */
public void onGetWalkingRouteResult(WalkingRouteResult result) {
WalkingRouteOverlay overlay = new WalkingRouteOverlay(baiduMap);
baiduMap.setOnMarkerClickListener(overlay);
List&WalkingRouteLine& routeLines = result.getRouteLines(); // 获取到所有的搜索路线,最优化的路线会在集合的前面
overlay.setData(routeLines.get(0)); // 把搜索结果设置到覆盖物
overlay.addToMap();
// 把搜索结果添加到地图
overlay.zoomToSpan();
// 把搜索结果在一个屏幕内显示完
Utils.javapackage com.itheima.baidumap74.
import android.content.C
import android.view.G
import android.widget.T
public class Utils {
* 在屏幕中央显示一个Toast
* @param text
public static void showToast(Context context, CharSequence text) {
Toast toast = Toast.makeText(context, text, Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
AndroidManifest.xml
&?xml version="1.0" encoding="utf-8"?&
&manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.itheima.baidumap74"
android:versionCode="1"
android:versionName="1.0" &
android:minSdkVersion="8"
android:targetSdkVersion="17" /&
&uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /&
&uses-permission android:name="android.permission.INTERNET" /&
&uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" /&
&uses-permission android:name="android.permission.WAKE_LOCK" /&
&uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /&
&uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /&
&uses-permission android:name="android.permission.GET_TASKS" /&
&uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /&
&uses-permission android:name="android.permission.WRITE_SETTINGS" /&
&uses-permission android:name="android.permission.READ_PHONE_STATE" /&&!-- 这个权限用于进行网络定位 --&
&uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" &
&/uses-permission&
&!-- 这个权限用于访问GPS定位 --&
&uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" &
&/uses-permission&
&!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位 --&
&uses-permission android:name="android.permission.ACCESS_WIFI_STATE" &
&/uses-permission&
&!-- 获取运营商信息,用于支持提供运营商信息相关的接口 --&
&uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" &
&/uses-permission&
&!-- 这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位 --&
&uses-permission android:name="android.permission.CHANGE_WIFI_STATE" &
&/uses-permission&
&!-- 用于读取手机当前的状态 --&
&uses-permission android:name="android.permission.READ_PHONE_STATE" &
&/uses-permission&
&!-- 写入扩展存储,向扩展卡写入数据,用于写入离线定位数据 --&
&uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" &
&/uses-permission&
&!-- 访问网络,网络定位需要上网 --&
&uses-permission android:name="android.permission.INTERNET" /&
&!-- SD卡读取权限,用户写入离线定位数据 --&
&uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" &
&/uses-permission&
&application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:name=".MyApplication"&
&meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="SU4uGcWV9y89olrB6SNtfFWBrWW7L8vX" /&
android:name=".DemoListActivity"
android:label="@string/app_name" &
&intent-filter&
&action android:name="android.intent.action.MAIN" /&
&category android:name="android.intent.category.LAUNCHER" /&
&/intent-filter&
&/activity&
&activity android:name=".HelloBaiduMapActivity"/&
&activity android:name=".MapLayerActivity"/&
&activity android:name=".CircelOverlayActivity"/&
&activity android:name=".TextOverlayActivity"/&
&activity android:name=".MarkerOverlayActivity"/&
&activity android:name=".SearchInBoundActivity"/&
&activity android:name=".SearchInCityActivity"/&
&activity android:name=".SearchInNearbyActivity"/&
&activity android:name=".DrivingSearchActivity"/&
&activity android:name=".TransitSearchActivity"/&
&activity android:name=".WalkingSearchActivity"/&
&activity android:name=".LocationActivity"/&
&service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote"&
&/service&
&/application&
&/manifest&
获取JavaAPI 服务方法,首先申请密钥(apk),才可成功加载API文件。
没有更多推荐了,}

我要回帖

更多关于 百度地图定位失败 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信