2016-05-28 6 views

答えて

1

Xposedが既にこの機能をサポートしているかどうかはわかりませんが、アプリのネイティブライブラリフォルダに.soを置くか、AndroidのDexClassLoaderをフックしてライブラリをロードする必要があります。

クラスローダーを使用して.soファイルを他のアプリケーションに正常にロードしました。私のソリューションは、あなたが望むことをする方法を見つけることができるので、良いユースケースになることができます。基本的に私はローカルの/ tmp /先住民/中/データのライブラリを配置し、その後のようなものでした:あなたが見hereを取るあなたの機能をパッケージ化する方法についていくつかの詳細が必要な場合

//JNI classes are in data/local/tmp/dexjars/ 
File[] files = new File("data/local/tmp/dexjars/" + type + "/").listFiles(); 

//Folder to store optimized dex code 
String hash = "dex" + lpparam.packageName.hashCode(); 

//In case you want to have several packages to load 
for (File file : files) { 

    final File tmpDir = new File("data/local/tmp/optdexjars/" + hash + "/"); 

    tmpDir.mkdirs(); 

    //Create a DexClassLoader that links yo your native libraries 
    final DexClassLoader classloader = new DexClassLoader(
         file.getAbsolutePath(), tmpDir.getAbsolutePath(), 
         "data/local/tmp/natives/", 
         ClassLoader.getSystemClassLoader()); 

    //Retrieve your classes performing the JNI 
    Class c = Class.forName("FULLY_QUALIFIED_JNI_CLASSNAME", true, classloader); 
} 

を。

簡単なやり方で見つけたら、投稿してください。

幸運を祈る!

関連する問題