2016-11-28 2 views
0

wie geht es dir? Ich hoffe das, mein kleines Problem, oder eher Verwirrung, ist, wie ich bereits in der Frage erwähnt habe, wenn es möglich ist, eine Anwendung von deiner APK mit einigen bereits erwähnten Methoden oder mit anderen, die du kennst, auszuführen.Es ist möglich, eine Anwendung von seiner apk

Warum meine Zweifel? Meine Frage ist, warum ich in meiner Forschung Referenzen über die Methoden sahen bereits erwähnt und Codes, die ich in meinem umgesetzt haben, aber nicht geben Effekt in Wirklichkeit tut nichts:

final String apkFile ="storage/sdcard0/Mostrador_1.0.apk"; 
String className = "com.example.mostrador"; 
String methodToInvoke = "add"; 
final File optimizedDexOutputPath = getDir("outdex", 0); 

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

try { 
    Class<?> loadedClass = dLoader.loadClass(className); 
    Object obj = (Object)loadedClass.newInstance(); 
    int x =5; 
    int y=6; 
    Method m = loadedClass.getMethod(methodToInvoke, int.class, int.class); 
    int z = (Integer) m.invoke(obj, y, x);    
    System.out.println("The sum of "+x+" and "+"y="+z); 

} 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(); 
} 

Von der Frage: Android- Using DexClassLoader to load apk file

Warum möchte ich wissen? Der Grund ist, dass ich in meiner Anwendung die Möglichkeit implementieren möchte, zusätzliche Anwendungen zu verwenden, ohne dass sie heruntergeladen werden müssen, und diese werden vom Benutzer ausgewählt.

Wenn Sie etwas über den Punkt oder Thema zu diskutieren wissen, kommentieren Sie bitte.

Antwort

0

U kann dieses Open-Source-Projekt auf GitHub erforschen. Sie sind verschiedene Arten von dynamischen Laden apk zur Laufzeit.

1. AndroidDynamicLoader

2. dynamic-load-apk

3. DroidPlugin

4. DynamicAPK

+0

Freund Vielen Dank für die sehr kompromittierende Inhalte, die ich studiere, aber man kann nicht Geben Sie mir eine Hand, die auch auf dieses Thema verweist: Es ist möglich, eine Anwendung auszuführen, die sich in einem anderen Verzeichnis befindet. Ich erkläre alle Dateien, die gespeichert werden, wenn die APK-Datei installiert ist Ich habe es in einen anderen Ordner verschoben, die Datendateien sind die apk, die .dex-Datei, der Cache. Gibt es eine Möglichkeit, den Android-Rechner dazu zu bringen, Esa Application auszuführen oder einen Computer zu erstellen, um sie auszuführen? Vielen Dank. – Electronicappap

Verwandte Themen