admin管理员组

文章数量:1593159

文章目录

    • 开发平台基本信息
    • 问题描述
    • 解决方法

开发平台基本信息

芯片: MSM8953_64
版本: Android 10
kernel: msm-4.9

问题描述

Android系统在设计的时候,越来越往安全方面靠拢,在低版本的Android系统中,可以轻轻松松获取特殊权限;而在高版本的Android系统中,权限要求越来越严格,root、selinux、su等等都变得越来越难搞定;反射也是同样的,低版本的Android系统,应用可以通过反射调取一些系统接口,以获得系统信息或者操控系统功能,像以太网、WIFI、蓝牙等等;但是,在Android10中,有些反射会调用失败,查了对应的接口与Android7.1的并没有区别,但是就是报找不到对应的方法。暴力的解决方案就是直接去掉系统对反射的限制,这样应用就能够继续调用反射使用系统API。

解决方法

diff --git a/art/runtime/hidden_api.cc b/art/runtime/hidden_api.cc
index 388ed33..4486d4e 100644
--- a/art/runtime/hidden_api.cc
+++ b/art/runtime/hidden_api.cc
@@ -485,7 +485,7 @@ bool ShouldDenyAccessToMemberImpl(T* member, ApiList api_list, AccessMethod acce
     }
   }
 
-  return deny_access;
+  return false;
 }

本文标签: 反射高通应用层系统API