java - 在 Java (Android) 中扩展动态加载的类

标签 java android

我不确定我想要实现的目标是否可能。

我正在从另一个 apk 加载一个类,如下所示:

final Class classToLoad = (Class<Object>) pathClassLoader.loadClass(classPath);

这一切都很好,但我需要扩展它,所以我尝试创建一个扩展它的子类:

class other extends classToLoad {...code to follow...}

但是编译器提示它需要类名而不是 classToLoad

有什么办法可以解决吗?

在我被喊倒之前,是的,我正在尝试修改另一个应用程序的行为,我没有该应用程序的源代码,但我并不是试图“破解”付费应用程序或类似应用程序,我是只尝试启动未导出的服务,启动该服务的唯一方法是打开 Activity 并点击菜单项,我正在尝试自动执行此操作,尽管我有一种感觉,我会被告知这一点不可能。

最佳答案

Is there any way around it?

据我所知,这没有帮助。

although I have a feeling I will be told this is not possible.

目前还不清楚从外部 APK 加载类与“打开 Activity 并点击菜单项”有何关系。无论如何,您无法执行任何操作来启动该服务,除非在 root 设备上(您可以在其中自动执行其他应用程序的实际 UI,或修改其 list 以导出服务等)。即使您以某种方式导致其他应用程序的部分 UI 在您的进程中运行,该进程仍然是您的进程,而不是其他应用程序的进程。您的进程没有任何启动非导出服务的权限。

关于java - 在 Java (Android) 中扩展动态加载的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49466899/

相关文章:

java - 如何使用 MediaPlayer 开始 Activity

java - Android 仅使用 API 20 : Android 4. 4 (KitKat Wear) 进行编译

java - Android onDismissListener 调用取消

java - 如何在内部测试类中注入(inject)spring上下文?或者还有什么其他解决方法?

java - 强制用户仅添加希伯来字母

android - 如何在android中为圆角矩形按钮制作样式

java - Play Framework : Store connections after onStart?

java - 如何让 JNA 从一个 jar 文件中提取多个 DLL 文件?

java - 如何正确包含 cordova 插件的外部 jar 文件?

java - OkHttp MockWebServer 重启时接受连接失败