='mLocationMode']" name="visibility">public</attr>
<attr path="/api/package[@name='com.baidu.mapapi.a.a']/class[@name='a']" name="obfuscated">false</attr>
</metadata>
4、添加BaiduMapOptions.cs文件
在Additions文件夹下添加该文件,然后将其改为下面的内容:
namespace Com.Baidu.Mapapi.Map
{
public partial class BaiduMapOptions
{
public BaiduMapOptions() { }
}
}
该文件的用途是提供一个不带参数的构造函数,如果不添加该文件,无法直接在后续节的Demos项目中创建BaiduMapOptions的实例(这一节用不到它)。
5、生成dll文件
鼠标右击该项目名,选择【生成】,此时应该在【输出】窗口中看到编译成功了:
========== 全部重新生成: 成功 1 个,失败 0 个,跳过 0 个 ==========
这样一来,在bin\debug文件夹下就成功生成了BdMapV371BindingLib.dll,以后就可以在示例项目中引用这个.dll文件了。
三、创建BdMapV371Demos解决方案并获取开发密钥
解决方案和项目名:BdmapV371Demos
模板:Blank App(Android)
开发百度地图应用程序时,需要先在百度官网上申请一个开发密钥,百度的开发密钥由“SHA1+包名”组合组成,这是为了让一个项目唯一对应一个申请的密钥(key)。密钥申请成功后,才能在对应的项目中使用百度地图API。
1、修改AndroidManifest.xml文件
修改BdMapV371Demos项目的该文件,将其改为下面的内容:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="BdMapV371Demos.BdMapV371Demos" android:versionCode="1" android:versionName="1.0" android:installLocation="auto">
<uses-sdk />
<application android:label="BdMapV371Demos" android:theme="@style/MyCustomTheme">
<meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="你申请的密钥" />
<service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" />
</application>
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<!-- 访问网络,网络定位需要上网-->
<uses-permission android:name="android.permission.INTERNET" />
<!-- 这个权限用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!-- 获取运营商信息,用于支持提供运营商信息相关的接口-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- 这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<!-- 用于读取手机当前的状态-->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!-- 写入扩展存储,向扩展卡写入数据,用于写入离线定位数据-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- SD卡读取权限,用户写入离线定位数据-->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<!--允许应用读取低级别的系统日志文件 -->
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.ACCESS_SURFACE_FLINGE |