android 开发百度地图问题集锦

由于是第一次尝试使用百度地图的sdk的进行一个简单的定位,而遇到的问题,并说说本人理解到的原因和解决方法:

1、问题:从百度的开发平台注册和创建我们自己的应用后,再将百度sdk下载下来,并且集成到我们的应用 中,但在失败百度sdk的包中的类时,怎么都找不到。
原因:android studio 条用的so库文件都需要放到其项目中对应的jniLibs的目录中
解决方法:在项目总的src/main/ 下面新建jniLibs文件夹,并且将so库拷贝到此,注意需要对应其中的ABI或者CPU对应的文件夹,如下:
这里写图片描述

2、问题:将下载的sdk集成到应用后,首先想到的是定位当前的位置,但是在应用发现,总是找不到LocationClient 这个类。
原因:下载的sdk中少了一个jar包,如图:

这里写图片描述

但是在百度提供的demo中有一个locSDK_6.13.jar包的,如图:

这里写图片描述

解决方法:把这个jar包拷贝过去就可以了。(注意:还有so库中也有一个)

3、问题:将sdk都集成到应用后,启动应用,界面总是白板,并且在android studio的logcat中总是打印出,如下:

这里写图片描述

原因:在AndroidManifest.xml 文件配置申请的meta-data 中的name配置有问题,不知道是什么规则。
解决方法:

  <meta-data
            android:name="com.baidu.lbsapi.API_KEY"
            android:value="***************************"/>  //这里是你们自己创建应用时中的AK,我就用*代替了

4、问题:LocationCliean 的Start方法无论怎么执行,其IsStart的方法返回值都是false。
原因:百度地图需要在android app应用中的AndroidManifest文件中注册一个自己的服务,不然就·····
解决方法: 在 AndroidManifest.xml 文件中注册这个服务,如下:

        <service
            android:name="com.baidu.location.f"
            android:enabled="true"
            android:process=":remote" >
        </service>

5、问题:每次定位返回的都是4.9E-324,该值是百度地图返回的默认值。
原因:是因为直接使用的是下载的百度SDK,里面少了一个so库文件:liblocSDK6a.so
解决方法:在百度给的demo中,将这个so库文件放到jniLibs中对用的so库文件夹下面就可以了。

好了,以上就是我遇到过的问题,在这里记录一下,方便以后查询,如果有遇到其他问题,再行补充吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值