Hi all,

   I had used DexClassLoader to execute the code of other application
dynamically. I am calling method display() of another application from
my application. The display() method will just show the Toast pop up.

The following is the code of my running application

DexClassLoader dLoader = new DexClassLoader("/data/app/
android.testcase.apk","/data/app-
private",null,ClassLoader.getSystemClassLoader());
                        try {
                                        Class cLoad = 
dLoader.loadClass("android.testcase.TestCase");
                                        //Class[] param = new Class[] 
{Bundle.class};
                                        Method mLoad = 
cLoad.getMethod("display",null);
                                        Object obj = cLoad.newInstance();
                                        mLoad.invoke(obj);
                                } catch (Exception e) {
                                        // TODO Auto-generated catch block
                                        e.printStackTrace();
                                }

The method display() in the other android.testcase.apk is as follows,

public void display() {

        Toast.makeText(this, "Loaded properly",Toast.LENGTH_SHORT).show
();


    }

But this gives Exception and stacktrace as follows



05-13 20:10:22.155: WARN/System.err(773):
java.lang.reflect.InvocationTargetException
05-13 20:10:22.166: WARN/System.err(773):     at
android.testcase.TestCase.dispaly(TestCase.java:23)
05-13 20:10:22.176: WARN/System.err(773):     at
java.lang.reflect.Method.invokeNative(Native Method)
05-13 20:10:22.186: WARN/System.err(773):     at
java.lang.reflect.Method.invoke(Method.java:521)
05-13 20:10:22.194: WARN/System.err(773):     at
android.loaduiapp.LoadUiApp$1.onClick(LoadUiApp.java:28)
05-13 20:10:22.194: WARN/System.err(773):     at
android.view.View.performClick(View.java:2179)
05-13 20:10:22.204: WARN/System.err(773):     at
android.view.View.onTouchEvent(View.java:3828)
05-13 20:10:22.204: WARN/System.err(773):     at
android.widget.TextView.onTouchEvent(TextView.java:6291)
05-13 20:10:22.216: WARN/System.err(773):     at
android.view.View.dispatchTouchEvent(View.java:3368)
05-13 20:10:22.225: WARN/System.err(773):     at
android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
05-13 20:10:22.235: WARN/System.err(773):     at
android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
05-13 20:10:22.246: WARN/System.err(773):     at
android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
05-13 20:10:22.256: WARN/System.err(773):     at
android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
05-13 20:10:22.256: WARN/System.err(773):     at
com.android.internal.policy.impl.PhoneWindow
$DecorView.superDispatchTouchEvent(PhoneWindow.java:1707)
05-13 20:10:22.266: WARN/System.err(773):     at
com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent
(PhoneWindow.java:1197)
05-13 20:10:22.266: WARN/System.err(773):     at
android.app.Activity.dispatchTouchEvent(Activity.java:1993)
05-13 20:10:22.275: WARN/System.err(773):     at
com.android.internal.policy.impl.PhoneWindow
$DecorView.dispatchTouchEvent(PhoneWindow.java:1691)
05-13 20:10:22.284: WARN/System.err(773):     at
android.view.ViewRoot.handleMessage(ViewRoot.java:1525)
05-13 20:10:22.284: WARN/System.err(773):     at
android.os.Handler.dispatchMessage(Handler.java:99)
05-13 20:10:22.297: WARN/System.err(773):     at android.os.Looper.loop
(Looper.java:123)
05-13 20:10:22.305: WARN/System.err(773):     at
android.app.ActivityThread.main(ActivityThread.java:3948)
05-13 20:10:22.305: WARN/System.err(773):     at
java.lang.reflect.Method.invokeNative(Native Method)
05-13 20:10:22.305: WARN/System.err(773):     at
java.lang.reflect.Method.invoke(Method.java:521)
05-13 20:10:22.314: WARN/System.err(773):     at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run
(ZygoteInit.java:782)
05-13 20:10:22.314: WARN/System.err(773):     at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540)
05-13 20:10:22.324: WARN/System.err(773):     at
dalvik.system.NativeStart.main(Native Method)
05-13 20:10:22.336: WARN/System.err(773): Caused by:
java.lang.NullPointerException
05-13 20:10:22.454: DEBUG/dalvikvm(773): GC freed 4388 objects /
414064 bytes in 115ms
05-13 20:10:22.466: WARN/System.err(773):     at
android.content.ContextWrapper.getResources(ContextWrapper.java:79)
05-13 20:10:22.466: WARN/System.err(773):     at
android.widget.Toast.<init>(Toast.java:88)
05-13 20:10:22.477: WARN/System.err(773):     at
android.widget.Toast.makeText(Toast.java:230)
05-13 20:10:22.485: WARN/System.err(773):     ... 25 more


Please Help. Am I missing something??


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers-unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to