1.在AndroidManifest.xml中的<application>加入开发密钥
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="开发者key"/>
如下图:
获取开发者KEY(上篇文章已经创建好了应用,我们直接在控制台获取key):
在AndroidManifest.xml添加权限声明
<!--//获取设备网络状态,禁用后无法获取网络状态-->
<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" tools:ignore="ProtectedPermissions" />
<!--//这个权限用于访问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" />
如下图(网络定位那一段会报红,Alt + Enter就可以解决):
在布局文件中添加地图容器:
<com.baidu.mapapi.map.MapView
android:id="@+id/baiduMapView"
android:layout_width="0dp"
android:layout_height="0dp"
android:clickable="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0"
app:layout_constraintHorizontal_bias="1.0"/>
如下图:
修改build.gradle文件(添加如下代码):
multiDexEnabled true
如下图:
运行项目: