1

我在网上遇到了一些教程,它们调用了简单的方法,我只需要调用接受 Context 作为参数的方法“startDownload”。我现在称它为:

Class<?> loaded = cl.loadClass("com.test.someclass");
Method m = loaded.getDeclaredMethod("startDownload", null);
m.invoke(this, null); 

其中 c1 是 DexClassLoader。但没有成功。我收到 NoSuchMethodException 错误,我知道我必须在某处添加参数,但不知道在哪里......有什么建议吗?

谢谢

4

1 回答 1

2

我建议看那个帖子

调用时,参数在方法名称之后传递,如此Class.getMethod(name, ...)所述。您可以直接使用您必须通过的成员:classClass

Method myMethod = myClass.getMethod("doSomethingWithAString", String.class);

也许您忘记了其中一些:如果签名(因此参数)不正确,将找不到该方法。

于 2011-09-14T13:19:06.093 回答