本人第一次写文章,小白一枚,如有错误欢迎大家提出来,也可以私信我,大家一起交流讨论。
| |
| |
| |
| |
| |
| |
第一部分–注册和获取开发秘钥(AK)
附上 百度地图 SDK开发密钥的申请地址链接:http://lbsyun.baidu.com/apiconsole/key
登录后将进入API控制台,如下图:
点击“创建应用”开始申请开发密钥,如下图:
填写应用名称,注意应用类型选择“Android SDK”、正确填写SHA1 和 程序包名(SHA1和包名的获取方法见下文)。如图:
注意:获取SHA1的时候,可以windows进入控制台,输入cmd后执行 ”cd .android”定位到”.android”文件夹下,继续操作控制台,在控制台输入命令:
调试版本使用指令:keytool -list -v -keystore debug.keystore
发布版本请使用指令:keytool -list -v -keystore apk 的 keystore(调试版本默认密码是: android)
获得完成后进行填写,来获得AK(后面开发要用到,可以提前保存好)
第二部分 Android Studio的配置
下载开发包
开发包下载地址http://lbsyun.baidu.com/index.php?title=sdk/download&action#selected=mapsdk_basicmap,mapsdk_searchfunction,mapsdk_lbscloudsearch,mapsdk_calculationtool,mapsdk_radar
选择自己需要的功能进行下载
点击开发包进行下载,下载完成后会有![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/650d728dd5c6f31502148a345451efed.png)
进入libs,将这个.jarde的文件添加到Android的app下的libs里面![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/30b23eea6b27cbb4cdfb434ce3c36674.png)
在将.jar文件放入进去后,右键Add As Library
而其它5个文件放到main下面的jniLibs![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/472d6e910223c0fc60a9f6033ea92091.png)
这个jniLibs是自己创建的文件夹
加入完之后,看一下自己的build.gradle中有无对应生成的文件说明![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/01e49078662c4e84cf2d245b45c2cabb.png)
第三部分—开发前的AS设置
第一步 配置AndroidManifest.xml文件
1.在中加入如下代码配置开发密钥(AK):
<application>
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="开发者 key" />
</application>
这个开发者 Key就是前面申请的AK(开发秘钥)
2. 在外部添加如下权限声明:
<!--//获取设备网络状态,禁用后无法获取网络状态-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!--//网络权限,当禁用后,无法进行检索等相关业务-->
<uses-permission android:name="android.permission.INTERNET" />
<!--//读取设备硬件信息,统计数据-->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!--//读取系统信息,包含系统版本等信息,用作统计-->
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
<!--//获取设备的网络状态,鉴权所需网络代理-->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!--//允许sd卡写权限,需写入地图数据,禁用后无法显示地图-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!--//这个权限用于进行网络定位-->
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<!--//这个权限用于访问GPS定位-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!--//获取统计数据-->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!--//使用步行AR导航,配置Camera权限-->
<uses-permission android:name="android.permission.CAMERA" />
<!--//程序在手机屏幕关闭后后台进程仍然运行-->
<uses-permission android:name="android.permission.WAKE_LOCK" />
自Android6.0起部分权限的使用需要在代码中动态申请。
3.在AndroidManifest.xml的文件中添加下面代码(百度地图定位的服务)
<service android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote">
<intent-filter>
<action
android:name="com.baidu.location.service_v2.2">
</action>
</intent-filter>
</service>