当前位置: 首页 > 知识库问答 >
问题:

Reflections库在Android中返回空列表

呼延聪
2023-03-14

我正在尝试检索一个带有Android特定注释的类列表。我正在尝试使用反射库来完成此操作。但无论我做什么,Reflections都返回一个空集。最后,我尝试使用Reflections.getAllTypes(),它应该返回包中的所有类,它给我的消息是“Could not find subtypes of Object.nake SubTypesScanner initialized to include Object class-new SubTypesScanner(false)”我已经验证了我正在这样做,所以我查看了该方法的代码,如果包中没有类,它将返回该错误。

下面是我得到错误的代码示例:

Reflections reflections = new Reflections(this.getClass().getPackage().getName(), 
        new SubTypesScanner(false));
Set<String> classes = reflections.getAllTypes(); // Throws runtime error

这至少应该返回调用它的类。我也尝试过为包使用空字符串,答案在这里。知道是什么引起的吗?

共有1个答案

司空鸣
2023-03-14

我遇到了同样的问题。由于反射使用Java协助解析.jar文件中的.class文件,而这在android应用程序中是不存在的,所以不可能使用反射。但是我们可以使用其他工具来解决.dex和它将会起作用

 类似资料:
  • 昨天我的Nexus5收到了从到版本的更新。此后,扫描设备中可用网络的动作停止接收列表,在这种情况下,结果列表的大小为0,即使在Wifi系统设置中列出了10+个Wifi网络。 这方面的代码通常是:注册并在接收器中等待事件,如下所示: 我在API的变化主题中搜索了关于这个的内容,但是我没有看到这个功能有什么突破性的变化。 有人注意到了吗?是API中的新内容还是仅有的个别情况?

  • 我正在尝试从我的应用打开Gmail(点击按钮)。我只在Android11中面临这个问题。这不是打开Gmail。在本例中,QueryInputActivities返回空列表。 请帮助我解决android 11的这个问题。下面是我正在使用的代码。。

  • 我试图获取一个列表从数据库和findAll()返回空列表。我有多个jpa存储库,但只有一个不工作。这是代码: 这就是实体: 当我调用product类别epository.findAll()时,它返回空列表,因此我在数据库中有许多条目。谢谢你的帮助!

  • 有人能告诉我为什么列表返回空吗?我的xpath是准确的,因为我重新检查了它,但我仍然无法迭代它,而调试for循环甚至没有执行。我不确定我哪里出了问题。

  • 当我在android Studio中集成OpenCV进行眼睛检测时。集成后消息打印Opencv安装成功消息生成,但出现错误。 无法从加载器加载detection_based_trackerdalvik.system.PathClassLoader[DexPathList[[zip file"/data/app/com.example.admin.lanskart-2.apk],nativeLibr

  • 这一行是: 我在和上尝试了和,但仍然给出相同的错误