【技术实现步骤摘要】
控制移动应用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远程过程调用通信机制进行函数接...
【专利技术属性】
技术研发人员:张黎明,吴浩,徐会军,郑磊,马同森,郝大雨,杨芳,马晓忱,
申请(专利权)人:国能网信科技北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。