`

java反射机制 调用android得隐藏api

 
阅读更多

android源码下有一些标 注有hide得类 ,这些是android隐藏得api
我们可以通过java得反射来调用这些类
比如我下面就用反射来调用IWindowManager得injectKeyEvent方法来向系统发送模拟按键事件
未命名.jpg
这里分别获取类得名字。仅仅只是类名
未命名.jpg
这里是获取ServiceManager得方法getservice ,这个方法得有一个参数是 String类型得
未命名.jpg
这里是getService.invoke(ServiceManager.newInstance(), "window")); 是调用了这个getservice得方法
方法名字.invoke() 第一个参数必须为类得实例 必须newInstance() 第二个参数 就是方法要传得参数
这样就等于调用了ServiceManager.getService("window"); 返回一个binder

IWindowManager.Stub.asInterface((IBinder) 这里IwindowManager 是不能被eclipse识别得 我们必须去源码那把这个类拷过来 建一个相同得包名 放置这个类 比如android.view.IWindowManager的aidl
未命名.jpg
就可以生成一个IWindowManager得类了
未命名.jpg
就可以获得这个IWindowManager得实例了
未命名.jpg

这样做 就可以调用android隐藏得api了 不过不同得api得方法和参数都不一样 需要我们去看源码怎么调用
而且这样调用隐藏得api 一样需要遵循android得权限 在能调用

分享到:
评论

相关推荐

    利用java反射调用Android隐藏Api

    利用java的反射原理来调用 Android隐藏api 应用开发必备哦 详细描述: http://blog.csdn.net/y_haiyang/article/details/9924925 ====================关注小鱼=================== 新浪微博:...

    android 隐藏api jar包,api 30

    访问隐藏API通常需要通过Java的反射机制。反射允许程序在运行时动态地获取类的信息(如类名、方法名)并调用。使用`Class`, `Method`, `Constructor`等类,开发者可以调用隐藏API的私有方法或访问私有字段。 5. **...

    android系统java反射机制详解

    在Android系统中,Java反射机制同样被广泛应用,尤其是在动态加载类、处理不确定类型的对象、调用私有方法或者访问私有变量等方面。下面将深入探讨Java反射机制的概念、原理及在Android开发中的应用。 一、Java反射...

    Java反射机制的学习

    Java反射机制是Java编程语言中的一项核心特性,它允许程序在运行时动态地获取类的信息并进行操作。这使得Java能够在编译后仍然能够灵活地处理类和对象,增强了代码的动态性。在Android应用开发中,反射机制尤其重要...

    java反射机制的原理及在Android下的简单应用

    ### Java反射机制的原理及在Android下的简单应用 #### 一、Java反射机制的基本概念 反射(Reflection)是指程序在运行时能够访问、检测和修改它自身的能力。这种能力使得程序能够动态地获取自身的结构信息并操作...

    android PackageManager 反射调用相关的类

    Android PackageManager 有很多方法是没有暴漏出来的,我们如果想调用的话需要用...android_dependency.jar 提供了反射调用相关的class定义,直接放到你的工程libs目录下面,然后就可以进行反射调用PackageManager的API

    android PackageManager 反射调用相关的类android_dependency.jar

    Android PackageManager 有很多方法是没有暴漏出来的,我们如果想调用的话需要用...android_dependency.jar 提供了反射调用相关的class定义,直接放到你的工程libs目录下面,然后就可以进行反射调用PackageManager的API

    反射机制在Android开发中的应用.pdf

    通过Java反射机制,开发者可以访问和调用这些隐藏的类和方法,从而实现更多功能。 依赖注入(Dependency Injection,DI)和控制反转(Inversion of Control,IOC)是降低程序耦合性的关键原则。传统编程中,调用者...

    android使用webView实现java程序与js脚本的相互调用

    为了防止恶意JavaScript代码对Android应用造成危害,从API 17开始,`addJavascriptInterface()`默认禁用了反射调用。因此,我们需要使用`@JavascriptInterface`注解标记所有暴露给JavaScript的方法。此外,对于敏感...

    Java反射机制的原理及在Android下的简单应用[归纳].pdf

    Java反射机制是Java语言的一个重要特性,它允许程序在运行时动态地获取类的信息并创建对象,甚至可以访问私有成员。在Android开发中,反射机制有着广泛的应用,尤其是在处理框架内部逻辑、插件化开发、API兼容性等...

    Android提高之探秘蓝牙隐藏API

    本文主要聚焦于Android蓝牙功能中的隐藏API,探讨如何通过Java的反射机制来调用并实现蓝牙设备的配对和解配对。 首先,我们要明白,Android SDK提供的BluetoothAdapter类中,并没有直接提供创建配对(createBond)...

    android隐藏api

    1. **反射机制**:由于隐藏API不包含在公开的SDK中,开发者往往需要使用反射机制来调用这些接口。反射允许程序在运行时检查类、接口、字段和方法的信息,并且能够在运行时创建和操作类的对象。通过反射,开发者可以...

    Android调用隐藏系统服务锁屏

    在Android系统中,调用隐藏服务来实现锁屏和设置默认锁屏密码涉及到对Android框架层及安全机制的深入理解。下面将详细讲解这个过程涉及的知识点。 首先,Android系统是一个基于Linux内核的开源移动操作系统,它允许...

    通过反射调用静态方法

    在Java编程中,反射是一种强大的工具,它允许我们在运行时检查和操作类、接口、字段以及方法等...这些文件都是Java开发中的常见元素,与反射调用静态方法的主题直接关联性不大,但它们构成了一个完整的Java项目环境。

    java 反射的使用

    - 在Android开发中,反射常用于处理兼容性问题,如动态调用API,访问隐藏类或方法,或者在运行时改变组件的行为。 8. **安全性与性能考虑** - 反射虽然强大,但也可能导致安全问题,因为它能绕过访问控制。因此,...

    Android 下通过反射调用加载/卸载(mount/unmount) 外置SD卡

    要通过反射调用加载和卸载外置SD卡,我们需要访问Android系统的私有API,因为这些操作不在官方的SDK中公开。具体来说,我们关注的核心类是`MountService`,它是负责设备挂载和卸载的核心组件。 1. **`IMountService...

    java 反射 报错 no such method exception

    ### Java反射机制与NoSuchMethodException详解 在Java编程中,反射是一种强大的机制,允许程序在运行时检查和修改自身结构和行为。然而,当开发者尝试使用反射调用一个不存在的方法时,便会遇到`java.lang....

    Qt for Android 用JNI来使C++和Java互调(目前最新版全网只有这个可用)

    在Qt for Android中,我们可以通过JNI来调用C++编写的Qt函数,或者在C++代码中调用Android的API,实现对设备硬件和特定平台功能的访问。 在使用JNI的过程中,有以下几个关键步骤: 1. **创建JNI头文件**:使用...

Global site tag (gtag.js) - Google Analytics