问题标签 [dexclassloader]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
6878 浏览

android - 如何修复“dalvik.system.BaseDexClassLoader.findClass (BaseDexClassLoader.java:134)”

我升级到64位armeabi库并打包发布到googleplay后,在googleplay崩溃报告页面遇到如下问题:

它仅出现在 Android 9 设备上

我在我的最新发布版本应用程序中关闭了 R8。但它看起来就像以前一样。问题仍然存在

希望你的帮助

0 投票
0 回答
91 浏览

android - DexClassloader 在 Android 9 Pie 中是否仍然有效?

我一直在使用 DexClassloader 在 Android 5.1 Lollipop 的运行时加载类,我似乎记得它在 Android 9 Pie 中存在一些问题......

但我现在找不到任何提及它。也许没有问题,它仍然有效?

也许我与 android 10 Q 混淆了,出于安全原因,我知道在执行下载的二进制文件时肯定存在问题(这是termux的问题)。如果谷歌这样做,那么阻止执行下载的 java 代码也是有意义的。

DexClassloder 在 Android 9 Pie 中是否仍然有效?谢谢你的帮助!

0 投票
0 回答
32 浏览

java - 通过 DexClassLoader 加载 RoomDatabase

我有两个 APK。第一个 APK 是加载第二个 APK 的主 APK。在第二个 APK 中,我有下一个代码:

我的问题是当我在第二个 APK 中调用此行时:

我得到例外:

如果我将代码复制到主 APK 并从主 APK 调用此行,一切正常。

0 投票
1 回答
673 浏览

android - 如何使用 InMemoryDe​​xClassLoader?

我希望能够运行未作为应用程序一部分安装在内存中的代码。我假设 InMemoryDe​​xClassLoader 正是为此创建的,所以我尝试使用它在同一个应用程序(甚至是同一个类)中执行一个方法,但是从内存中执行。为此,我将 APK 本身加载到缓冲区中,并将该缓冲区提供给 InMemoryDe​​xClassLoader。但是,我得到一个 ClassNotFoundException。

用 DexClassLoader 做同样的事情效果很好!任何人都可以理解有什么问题吗?

0 投票
1 回答
61 浏览

java - 使用 DexClassLoader 时如何获取 Activity 中字段的当前值?

我在 MainActivity 中有一个像这样的字段

我用这段代码从 Dex 文件加载方法

那么,在run()方法中,如何获取字段的当前值?谢谢!

0 投票
0 回答
220 浏览

java - 无法加载 .SO 库

我在 android 中动态加载 SO 库时遇到问题,为了让人们理解为什么我实际上需要这样做,并且可能会建议不同的方法来做这件事,我将简要解释一下这个项目。我正在开展一个研究项目,以测试代码卸载我一直在研究的流程的好处,如下所示:

用户触发一个预先确定为耗时的函数,该过程使用 Xposed Hooks 拦截,应用程序的 Apk 被发送到服务器,然后在服务器上我从 APK 动态运行 android nougat 甚至 oreo 的方法不会像我想的那样造成任何麻烦,但主要问题是我正在使用的一些应用程序使用非 NDK 库,这会导致一些问题,因为系统不允许我动态加载库我需要将这些库添加到我的应用程序中,这对我不起作用,因为我的服务器应用程序是一个适合所有应用程序的应用程序,它接收方法名称 apk 和包名称以及一些参数,它应该使用参数运行函数并返回结果不管apk或函数名,所以直接切入问题

我需要能够运行此代码而不会遇到代码问题:

代码对android oreo及以上版本提出的问题

如果不是这个我得到

0 投票
0 回答
240 浏览

android - 在Android中动态加载.dex文件时出现“ClassNotFound”异常

我正在尝试学习在 Android 中动态加载类(.dex/.jar)。我从教程和 Stack Overflow 问题( tutorialthisthis )中收集了基本思想,但我未能实现动态加载类文件并不断给出ClassNotFound异常的目的。

我的步骤简要:

  1. 按照文章中的说明创建了一个 Java 文件。

  2. 将 java 源代码转换为 .class(结果 = DynamicClass.class)

  3. dx使用Android SDK 中的工具创建 jar 文件。(结果 = 带有 classes.dex 的 dynamic.jar)

    获得 .jar 文件后,我将其推送到 /sdcard/ (在模拟器和设备上都进行了测试)

    模拟器:Android 6.0 和设备:Android 11.0

    加载类的简要代码:

我不断收到ClassNotFound异常。

我错过了什么?为什么无法加载这个简单的类文件:(?

我的清单:

  1. 确保代码能够获取加载的文件 (<File>.exists())。代码能够获取文件。只是无法加载类。
  2. 确保dynamic.jar在其中包含一个classes.dex条目。(这是因为DexClassLoader想要一个.jar / .apk文件,其中包含classes.dex条目)
  3. 尝试在模拟器和设备上运行代码(两者都有不同的 Android 版本)。

异常说明:

异常:java.lang.ClassNotFoundException:在路径上找不到类“DynamicClass”:DexPathList[[zip file "/storage/emulated/0/dynamic.jar"],nativeLibraryDirectories=[/system/lib64, /vendor/lib64 ]]

包含包裹后的异常。

异常:java.lang.ClassNotFoundException:在路径上找不到类“mypack.DynamicClass”:DexPathList [[zip 文件“/storage/emulated/0/mypack.jar”],nativeLibraryDirectories=[/system/lib64,/vendor /lib64]]

0 投票
1 回答
128 浏览

java - 如何在android中更改按钮clicklistener外部活动?

我有一个包含 classes.dex 的 apk。我没有apk源代码。我已经从 dex 文件(LoginActivity)加载了一个活动,并在 LoginActivity 中为 button1 实现了 onClicklistener。我成功加载 dex 文件并通过以下代码从 dex 文件开始活动:

但是当我点击button2时,它没有显示alertdialog。我认为android正在阻止从活动之外更改onClicklistener。这是正确的吗?任何帮助如何实现这一点?

0 投票
1 回答
34 浏览

android - 运行另一个应用程序后,DexClassLoader 工作不稳定

我有一个与 apk-plugin 链接的工作代码。在我在 android 模拟器上运行另一个应用程序后,此代码停止工作。

DexClassLoader不再找到 apk 文件。

它看起来如何

loadClass开始下降到带有文本的异常:

没有找到类“com.example.testandlib.Testt”

请帮助了解在 android 模拟器上运行另一个应用程序可能会出现什么问题。模拟器重启没有效果。清洁项目也。

插件代码:

主要应用程序代码的一部分:

编辑:

我换线

现在我的代码正在运行。

然后我返回这条线

我的代码仍然有效!海森堡?