无法使用 JPype 重载 android.content.Context

问题描述

我正在尝试实现 android 上下文,但它说在创建对象时没有发现重载。

我的代码

 mContext = jpype.JClass("android.content.Context")
handle =TestClient(mContext)

错误

TypeError: No matching overloads found for constructor testClient(_jpype._JClass),options are:
E               public TestClient(android.content.Context)

我也尝试过使用 JObject

 mContext = jpype.JObject("android.content.Context")
handle =TestClient(mContext)

错误

TypeError: No matching overloads found for constructor testClient(java.lang.String),options are:
E               public TestClient(android.content.Context)

如何将其作为 android.content.Context 传递?

解决方法

这可以通过暴露 Android jar 并将其添加到类路径来实现。 发布您使用相同的 jpype.jpackage("android.content.Context")

_jpype.JClass 中的返回对象。

注意:这是一个 hack,不是很好的解决方案。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...