LBS上报

LBS说明

本模块主要提供地理位置采集模块的接入方法,地理位置的采集有利于基于LBS相关功能的应用。 MTA只会在App在前台运行的时候进行采集,并且有针对采集频率的自动控制策略。

MTA Android SDK LBS

  • 支持按照配置的时间或距离,持续性上报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采集

-(void)start;

停止LBS采集

-(void)stop;

Last updated