超详细的Android百度地图开发:在APP上定位并显示出来

超详细的Android百度地图开发:在APP上定位并显示出来

一 写在前面

由于项目所需,我需要在手机APP中嵌入百度地图。参考的文档是《第一行代码》。其中的功能包括GPS/网络定位、地图的显示、搜索地点并进行导航(这个第一行代码没有,需要自己实现)。今天要实现的功能是,通过GPS/网络来进行定位,并以文本的形式1、将经纬度显示在APP上,2、具体的国省市区街道信息

效果如图所示:
在这里插入图片描述

二 注册百度开发者账户、申请API KEY

1、注册百度开发者账户:http://lbsyun.baidu.com/
在右上角按下登录,若有账号直接登录,反之注册。
在这里插入图片描述
2、进入百度地图Android定位SDK网页:http://lbsyun.baidu.com/index.php?title=android-locsdk

点击获取密钥
在这里插入图片描述
点击创建应用
在这里插入图片描述
如图操作:
在这里插入图片描述
其中上图第三步,如下图操作所示,将SHA1复制进入上图的两个SHA1空位。
在这里插入图片描述

提交之后,你就发现自己已经有一个应用啦。
在这里插入图片描述
3、下载百度地图SDK:http://lbsyun.baidu.com/index.php?title=android-locsdk/geosdk-android-download

点击去下载,网页会提示你需要下载哪些组件,由于我需要定位、地图、检索和导航功能,所以我选择了以下四项,点击开发包下载。
在这里插入图片描述
4.新建Android项目
在Android Studio中新建一个名为LBSTest的项目,包名应该会自动被命名为com.example.lbstest。注意本章中的代码最好在手机上运行,因为手机可以得到真实的位置数据,感受会更深刻。

5、将SDK文件放入相关的路径中
下载成功并解压之后,会发现如下文件,点击进入libs。
在这里插入图片描述
libs中含有以下文件:
在这里插入图片描述
将BaiduLBS_Android.jar文件放在LBSTest文件夹-》app-》libs文件夹下。
将其余文件夹(arm64-v8a、armeabi、armeabi-v7a、x86、x86_64)放在LBSTest-》src-》main-》jniLibs文件夹下
注意:jniLibs文件夹是原本没有的,需要自己创建。

6、重新构建项目
打开LBSTest项目,点击AS右上角的Sync Project with Gradle Files
在这里插入图片描述

现在,百度地图所需的基本配置已经完成啦,接下来让我们修改代码部分。

三、代码实现

1、AndroidManifest.xml文件
在这个文件,主要有两个功能:
(1)、声明些所需要用到的权限,比如手机GPS、网络的权限等。(位置:uses-permission)
(2)、将百度地图的API-KEY写进去,下面代码我没有将API-KEY写进去,需要读者自行将自己申请的APIKEY复制输入进去。(位置:meta-data)
(3)、定义百度地图的服务,用于定位。(位置:service)

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.lbstest">



    <!-- 读写sd卡 -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <!-- 写sd卡 -->
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_GPS" />
    <!-- 获取精确gps位置 -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <!-- 获取粗略位置 -->
    <uses-permission an
评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值