LBS说明
本模块主要提供地理位置采集模块的接入方法,地理位置的采集有利于基于LBS相关功能的应用。
MTA只会在App在前台运行的时候进行采集,并且有针对采集频率的自动控制策略。
MTA Android SDK LBS
权限配置
在AndroidMenifest.xml添加LBS所需权限
<!--用于进行网络定位-->
<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>
LBS类说明
StatGpsMonitor
: LBS功能类
StatGpsOption
: GPS配置类
初始化定位信息
方法
/**
* 初始化LBS
* @param gpsOption GPS参数
*/
public void init(StatGpsOption gpsOption);
示例
// 初始化context
StatService.setContext(context);
// 初始化MTA
StatService.registerActivityLifecycleCallbacks(this);
// 初GPS始化配置参数
StatGpsOption statGpsOption = new StatGpsOption();
statGpsOption.setMinTime(10); // GPS更新时间
statGpsOption.setMinDistance(1000);// GPS更新距离
// 初始化LBS环境
StatGpsMonitor.getInstance().init(statGpsOption);
GPS参数说明
public class StatGpsOption {
/**
* 应用程序接收GPS更新的最短时间(即只有超过这个时间设定,系统才可能通知更新GPS数据)——单位毫秒
*
* @return 应用程序接收GPS更新的最短时间
*/
public long getMinTime();
/**
* 设置GPS位置更新的最小时间单元,单位为毫秒,默认30*1000即10秒
*
* @param minTime
*/
public void setMinTime(long minTime);
/**
* 应用程序接收GPS更新的最短距离(即只有超过这个距离,系统才可能通知更新GPS数据)——单位米
*
* @return 应用程序接收GPS更新的最短距离
*/
public float getMinDistance();
/**
* 设置GPS位置更新的最小距离单元,单位为米,默认5米
*
* @param minDistance
*/
public void setMinDistance(float minDistance);
}
启动LBS监控
启动并开始监控LBS,调用请,请确保相关的权限已经表态声明并动态申请(Android 6或以上)
考虑到性能消耗,请在必要时才启用,并在适当的时机,调用stopMonitor退出
方法
/**
* 启动LBS监控
*/
public void startMonitor();
示例
// 启动LBS监控
StatGpsMonitor.getInstance().startMonitor();
停止LBS监控
停止GPS监控和上报
方法
/**
* 停止LBS监控
*/
public void stopMonitor();
示例
// 停止LBS监控上报
StatGpsMonitor.getInstance().stopMonitor();
获取最近一次位置
方法
/**
* 获取最近LBS位置
* @return 最近LBS位置
*/
public Location getLastLocation();
示例
// 获取最近一次位置
StatGpsMonitor.getInstance().getLastLocation();
MTA iOS SDK LBS
SDK的引用
前置接入
首先参考《腾讯移动分析 iOS SDK 快速接入指南》和《腾讯移动分析 iOS SDK 接口使用说明》进行MTA的接入。
SDK的引入
然后在XCode中引用plugin目录下的mtalbs目录下的libmtalbs.a静态库。
添加对系统的CoreLocation.framework的引用。
地理位置的采集权限
iOS对系统的地理位置采集有权限控制,需要对info.list进行修改。
MTA需要配置的两个Key为:
1.NSLocationAlwaysAndWhenInUseUsageDescription
2.NSLocationWhenInUseUsageDescription 或 NSLocationAlwaysUsageDescription
参考: https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html#//apple_ref/doc/uid/TP40009251-SW18
接口说明
启动LBS采集
停止LBS采集