您当前的位置: Android定位SDK > 开发指南 > 配置环境
配置环境

导入库文件

导入库文件步骤:

1.在相关下载里下载最新的库文件。

2.使用Eclipse开发的开发者,将SO文件的压缩文件解压出来,把对应架构下的SO文件放入开发者自己APP的对应架构下的文件夹中(建议全部放入以提高程序兼容性);将JAR文件拷贝到工程的libs目录下,这样即可在程序中使用Android定位SDK。

使用AndroidStutio的开发者除了上述操作外,还需要在build.gradle中配置SO文件的使用,如下所示:

sourceSets {
        main {
    		jniLibs.srcDirs = ['libs']
        }
}

如果开发的是系统应用,除了需要在工程中配置SO文件,还需要手动把对应架构的SO文件拷贝到/system/lib下,如果是64位系统,则需要将64位的SO文件拷贝到/sytem/lib64下。

注意:新版本的定位SDK,开发者除了要更新JAR包之外,同时需要关注SO文件是否有更新。如果SO文件名称改变,即SO文件有更新,开发者要及时替换掉老版本,否则会导致定位失败。

设置AndroidManifest.xml

在Application标签中声明SERVICE组件,每个APP拥有自己单独的定位SERVICE

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

【重要提醒】

定位SDKv3.1版本之后,以下权限已不需要,请取消声明,否则将由于Android 5.0多帐户系统加强权限管理而导致应用安装失败。 <uses-permission android:name="android.permission.BAIDU_LOCATION_SERVICE"></uses-permission>

声明使用权限

<!-- 这个权限用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<!-- 这个权限用于访问GPS定位-->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<!-- 获取运营商信息,用于支持提供运营商信息相关的接口-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<!-- 这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<!-- 用于读取手机当前的状态-->
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<!-- 写入扩展存储,向扩展卡写入数据,用于写入离线定位数据-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<!-- 访问网络,网络定位需要上网-->
<uses-permission android:name="android.permission.INTERNET" />
<!-- SD卡读取权限,用户写入离线定位数据-->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>

设置AcessKey

Android定位SDK4.2及之后版本需要在Mainfest.xml正确设置Accesskey(AK),如果设置错误将会导致定位和地理围栏服务无法正常使用。

设置AK,在Application标签中加入

<meta-data
            android:name="com.baidu.lbsapi.API_KEY"
            android:value="AK" />       //key:开发者申请的Key

import相关类

import com.baidu.location.BDLocation;
import com.baidu.location.BDLocationListener;
import com.baidu.location.LocationClient;
import com.baidu.location.LocationClientOption;
import com.baidu.location.BDNotifyListener;//假如用到位置提醒功能,需要import该类
import com.baidu.location.Poi;