控制移动应用SDK库使用系统敏感权限的方法及存储介质技术方案

技术编号:36745378 阅读:28 留言:0更新日期:2023-03-04 10:27
本发明专利技术提供一种控制移动应用SDK库使用系统敏感权限的方法及存储介质,属于SDK库权限处理技术领域。所述方法包括:将第三方SDK库代码加载至隔离进程中执行,所述隔离进程不具有访问系统敏感权限;宿主进程调用隔离进程中的第三方SDK库接口并接收第三方SDK库提出的系统敏感权限访问请求;宿主进程基于敏感权限策略判断第三方SDK库提出的系统敏感权限访问请求是否允许被执行;在允许执行的情况下,宿主进程调用系统框架层接口执行相应访问操作。本方法不仅可以满足系统敏感权限控制的功能要求,而且引入的性能损耗较小,能够兼容市场上绝大部分Android手机系统,具备良好的兼容性。具备良好的兼容性。具备良好的兼容性。

【技术实现步骤摘要】
控制移动应用SDK库使用系统敏感权限的方法及存储介质


[0001]本专利技术涉及SDK库权限处理
,具体地涉及一种控制移动应用SDK库使用系统敏感权限的方法及一种计算机可读存储介质。

技术介绍

[0002]近年来,第三方SDK库凭借着便利及免费的特点,在移动应用开发中得到越来越广泛的使用,为了缩短开发周期,降低开发成本,移动应用开发者通常会集成一个或多个第三方SDK库到其应用之中,以增强应用的功能。
[0003]在Android平台上,第三方SDK库所涉及的代码主要包括Java字节码和native代码两类,Java字节码文件(.class)是由Java编译器编译Java源文件(.java)生成的二进制流文件,多个class文件可以被进一步打包为jar文件,native代码大多是由C/C++代码开发编译而来的,是以.so文件形式存在,so文件属于ELF文件格式,一种用于可执行文件和动态库文件的标准二进制数据封装格式。
[0004]然而,由于第三方SDK库内嵌于应用程序之中,在应用运行期间其将与宿主应用共享进程的运行环境和隐私本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种控制移动应用SDK库使用系统敏感权限的方法,其特征在于,包括:将第三方SDK库代码加载至隔离进程中执行,所述隔离进程不具有访问系统敏感权限;基于第三方SDK库提出的系统敏感权限访问请求,宿主进程代替隔离进程进行访问操作。2.根据权利要求1所述的控制移动应用SDK库使用系统敏感权限的方法,其特征在于,所述宿主进程代替隔离进程进行访问操作,包括:宿主进程调用隔离进程中的第三方SDK库接口并接收第三方SDK库提出的系统敏感权限访问请求;宿主进程基于敏感权限策略判断第三方SDK库提出的系统敏感权限访问请求是否允许被执行;在允许执行的情况下,宿主进程调用系统框架层接口执行相应访问操作。3.根据权利要求2所述的控制移动应用SDK库使用系统敏感权限的方法,其特征在于,所述宿主进程调用隔离进程中的第三方SDK库接口,包括:将要调用的第三方SDK库接口改为自定义代理函数接口,依据要调用的第三方SDK库接口定义代理函数接口,在代理函数接口的实现代码中采用binder远程过程调用通信机制,将代理函数接口定向到隔离进程中的第三方SDK库的实际对应函数接口。4.根据权利要求2所述的控制移动应用SDK库使用系统敏感权限的方法,其特征在于,所述宿主进程代替隔离进程进行访问操作,还包括:隔离进程拦截第三方SDK库提出的系统敏感权限访问请求,并将第三方SDK库提出的系统敏感权限访问请求发送至宿主进程。5.根据权利要求4所述的控制移动应用SDK库使用系统敏感权限的方法,其特征在于,所述隔离进程拦截第三方SDK库提出的系统敏感权限访问请求,并将第三方SDK库提出的系统敏感权限访问请求发送至宿主进程,包括:对系统服务敏感权限接口进行挂钩处理、对JNIEnv工具函数进行挂钩处理、以及对外部函数进行挂钩代理,以拦截第三方SDK库提出的系统敏感权限访问请求;采用binder远程过程调用通信机制进行函数接...

【专利技术属性】
技术研发人员:张黎明吴浩徐会军郑磊马同森郝大雨杨芳马晓忱
申请(专利权)人:国能网信科技北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1