1

我有一个简单的 android apk,它有一个活动和其他具有简单 UI(两个按钮,一个文本布局)的类,我将其生成为 apk,现在我想在新的 android 应用程序中使用 dex 类加载器加载它并启动来自新应用的 apk 活动。

我写了一个简单的类加载器,但我不知道如何启动该 apk 的活动,下面是为加载类而编写的代码,

请让我知道 1. 如何启动 apk 的活动?2.如何加载所有的apk类?

final String apkFile =Environment.getExternalStorageDirectory().getAbsolutePath()+"/Download/Offloadme.apk";
String activtyName= "com.example.test.MainActivity";

final File optimizedDexOutputPath = getDir("outdex", 0);

DexClassLoader dLoader = new DexClassLoader(apkFile,optimizedDexOutputPath.getAbsolutePath(),
        null,ClassLoader.getSystemClassLoader().getParent());

try {
     //How to load all the class of that apk
     // How to call the activity


} catch (ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (InstantiationException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IllegalAccessException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (NoSuchMethodException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IllegalArgumentException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (InvocationTargetException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
4

0 回答 0