我想挂钩PackageManager
的hasSystemFeature
系统方法。但这种方法很抽象。事实上,PackageManager
本身就是一个抽象类。挂钩方法会产生以下异常。
java.lang.IllegalArgumentException: Cannot hook abstract methods: public abstract boolean android.content.pm.PackageManager.hasSystemFeature(java.lang.String)
通常我们称之为context.getPackageManager().hasSystemFeature(string)
,但我永远不知道实现的子类是什么!那么在这种情况下我该怎么办?
我使用Smali调试来找到正确的钩子类
android.content.pm.IPackageManager.Stub.Proxy