【技术实现步骤摘要】
一种特定信息获取频率的控制方法和装置
[0001]本专利技术涉及
Android
应用程序开发
,尤其涉及一种特定信息获取频率的控制方法和装置
。
技术介绍
[0002]随着大众对个人信息的重视,相关部门及法律也对
APP
获取个人的特定信息制定了相应的规范,限制了
APP
获取个人特定信息的场景和频率
。Android
上的个人特定信息包括地理位置
、wifi
信息
、
蓝牙信息
、
传感器信息
、MAC
地址
、
国际移动设备识别码
(International Mobile Equipment Identity
,
IMEI)、
国际移动用户识别码
(International Mobile Subscriber Identity
,
IMSI)、AndroidId
等
。
[0003 ...
【技术保护点】
【技术特征摘要】
1.
一种特定信息获取频率的控制方法,其特征在于,所述方法包括:创建获取特定信息方法的辅助类;在所述辅助类中内通过将特定信息缓存的方式来控制特定信息的获取频率;在应用程序打包时识别出获取特定信息的字节码,将所述字节码替换成调用所述辅助类的方法;应用程序运行时通过调用所述辅助类中获取特定信息的方法来实现特定信息的获取
。2.
如权利要求1所述的特定信息获取频率的控制方法,其特征在于,在所述辅助类中内通过将特定信息缓存的方式来控制特定信息的获取频率之后,所述方法还包括:添加一个
Gradle
任务,在应用程序打包时的
Transform
阶段遍历应用程序所有
class
文件
。3.
如权利要求2所述的特定信息获取频率的控制方法,其特征在于,所述在应用程序打包时识别出获取特定信息的字节码,将所述字节码替换成调用所述辅助类的方法包括:通过
ASM
解析
class
文件的字节码结构;遍历
ASM
解析得到的字节码结构,检测是否有获取特定信息方法的调用;响应于检测到有获取特定信息的调用,通过
ASM
修改所述
class
文件,将有获取特定信息的调用修改为所述辅助类中的获取特定信息方法
。4.
如权利要求1所述的特定信息获取频率的控制方法,其特征在于,所述应用程序运行时通过调用所述辅助类中获取特定信息的方法来实现特定信息的获取包括:应用程序启动时从云端配置中获取每个特定信息的调用许可信息以及调用间隔的阈值信息;当调用获取特定信息的方法时,进入所述辅助类中的对应调用方法,基于所述调用许可信息判断对应特定信息是否允许获取,以及基于所述调用间隔的阈值信息判断上次获取此特定信息的时间间隔是否达到阈值;响应于特定信息允许获取,且时间间隔达到阈值,则调用系统
api
获取对应特定信息,并记录下本次调用的时间戳;响应于特定信息允许获取,但时间间隔未隔达到阈值,则返回上次缓存的特定信息;响应于特定信息不允许获取,则返回空值
。5.
一种特定信息获取频率的控制装置,其特征在于,所述装置包括:创建单元,用于创建获取特定信息方法的辅助类,在所述辅助类中内通过将特定信息缓存的方式来控制特定信息的获取...
【专利技术属性】
技术研发人员:彭露,
申请(专利权)人:探探科技北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。