所有文档
开发指南
移动热点判别功能指的是,可以通过接口调用,判别当前设备所链接的wi-fi是否为移动热点。
识别成功率可达到95%以上,识别正确率可达到98%。
使用场景:通过判断当前用户手机的上网状态是否为wi-fi、是否为wi-fi移动热点,从而执行对应的业务逻辑。
例如:视频等类型的应用,可以通过判别当前用户所连接的wi-fi是否是移动热点,从而控制是否进行视频的自动播放,或者给予用户提示性信息。
使用移动热点判别功能的方法如下:
在使用定位sdk进行具体开发工作之前,需, 并对开发工程进行环境配置工作。详细介绍请参考项目创建部分的说明。 此外, google在android 6.0中引入了动态权限获取机制,开发者在使用定位sdk之前, 请详细了解关于android 6.0系统开发须知。
请在主线程中声明locationclient类对象,该对象初始化需传入context类型参数。 推荐使用getapplicationconext()方法获取全进程有效的context。
核心代码段如下:
public locationclient mlocationclient = null;private mylocationlistener mylistener = new mylocationlistener();//bdabstractlocationlistener为7.2版本新增的abstract类型的监听接口//原有bdlocationlistener接口暂时同步保留。具体介绍请参考后文中的说明public voidoncreate(){mlocationclient = new locationclient(getapplicationcontext());//声明locationclient类mlocationclient.registerlocationlistener( mylistener );//注册监听函数}
android定位sdk自v7.2版本起,对外提供了abstract类型的监听接口bdabstractlocationlistener, 用于实现定位监听。原有bdlocationlistener暂时保留,推荐开发者升级到abstract类型的新监听接口使用, 该接口会异步获取定位结果,核心代码如下:
public class mylocationlistener extends bdabstractlocationlistener{@overridepublic voidonconnecthotspotmessage(string connectwifimac,int hotspotstate){//在这个回调中,可获取当前设备所链接网络的类型、状态信息//connectwifimac:表示连接wi-fi的mac地址,无连接或者异常时返回null//hotspotstate有以下三种情况//locationclient.connect_hpt_spot_true:连接的是移动热点//locationclient.connect_hpt_spot_false:连接的非移动热点//locationclient.connect_hpt_spot_unknown:连接状态未知}}
调用locationclient.requesthotspotstate()接口, 便可在步骤三中创建好的回调函数中获得结果。
核心代码如下:
mlocationclient.requesthotspotstate();//mlocationclient为第二步初始化过的locationclient对象//调用locationclient的requesthotspotstate()方法,便可发起请求,获取设备所链接网络信息
上一篇
下一篇
本篇文章对您是否有帮助?