轉自:.beyondsoft.activity;?
import?java.lang.reflect.Constructor;?
import?java.lang.reflect.InvocationTargetException;?
import?java.lang.reflect.Method;?
import?dalvik.system.DexClassLoader;?
import?android.app.Activity;?
import?android.content.pm.PackageInfo;?
import?android.os.Bundle;?
import?android.util.Log;?
public?class?PlugActivity?extends?Activity?{?
private?Class?mActivityClass;?
private?Object?mActivityInstance;?
Class?localClass;?
private?Object?instance;?
@Override?
protected?void?onCreate(Bundle?savedInstanceState)?{?
super.onCreate(savedInstanceState);?
Bundle?paramBundle?=?new?Bundle();?
paramBundle.putBoolean("KEY_START_FROM_OTHER_ACTIVITY",?true);?
paramBundle.putString("str",?"PlugActivity");?
String?dexpath?=?"/sdcard/FragmentProject.apk";?
String?dexoutputpath?=?"/mnt/sdcard/";?
LoadAPK(paramBundle,?dexpath,?dexoutputpath);?
}?
@Override?
protected?void?onStart()?{?
super.onStart();?
Method?start;?
try?{?
start?=?localClass.getMethod("onStart");?
start.invoke(instance);?
}?catch?(Exception?e)?{?
//?TODO?Auto-generated?catch?block?
e.printStackTrace();?
}?
}?
@Override?
protected?void?onResume()?{?
//?TODO?Auto-generated?method?stub?
super.onResume();?
Method?resume;?
try?{?
resume?=?localClass.getMethod("onResume");?
resume.invoke(instance);?
}?catch?(Exception?e)?{?
//?TODO?Auto-generated?catch?block?
e.printStackTrace();?
}?
}?
@Override?
protected?void?onPause()?{?
super.onPause();?
Method?pause;?
try?{?
pause?=?localClass.getMethod("onPause");?
pause.invoke(instance);?
}?catch?(Exception?e)?{?
e.printStackTrace();?
}?
}?
@Override?
protected?void?onStop()?{?
super.onStop();?
try?{?
Method?stop?=?localClass.getMethod("onStop");?
stop.invoke(instance);?
}?catch?(Exception?e)?{?
e.printStackTrace();?
}?
}?
@Override?
protected?void?onDestroy()?{?
//?TODO?Auto-generated?method?stub?
super.onDestroy();?
try?{?
Method?des?=?localClass.getMethod("onDestroy");?
des.invoke(instance);?
}?catch?(Exception?e)?{?
//?TODO?Auto-generated?catch?block?
e.printStackTrace();?
}?
}?