2011-09-14 12 views
1

Web上で簡単なメソッドを呼び出すチュートリアルをいくつか見てきました。必要なのは、コンテキストをパラメータとして受け入れるメソッド "startDownload"を呼び出すことだけです。私は今それを呼び出す:DexClassLoader - パラメータを持つメソッドを呼び出す

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

ここで、c1はDexClassLoaderです。しかし、成功はありません。私はNoSuchMethodExceptionのエラーを取得していますが、私はどこかでparametresを追加する必要があることを知っていますが、どこにアドバイスがあるのか​​わかりません。

ありがとうございました

答えて

2

私はthat postをお勧めします。

hereのように、Class.getMethod(name, ...)を呼び出すときに、メソッド名の後にパラメータが渡されます。あなたは、直接渡すあなたが持っているClassclassメンバーを使用することができます。

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

はたぶん、あなたはそれらのいくつかを忘れてしまった:メソッドが見つかりません署名(そのパラメータ)が正しくない場合。

関連する問題