Java 如何使用org.jf.dexlib2写入或重写dex文件?
我在网上搜索了很长时间。但是没有用。请帮助或尝试给出一些如何实现这一点的想法。 这里有一个演示,但我不明白。我想知道dexlib2是否可以用来编写或重写dex文件Java 如何使用org.jf.dexlib2写入或重写dex文件?,java,android,dalvik,dex,smali,Java,Android,Dalvik,Dex,Smali,我在网上搜索了很长时间。但是没有用。请帮助或尝试给出一些如何实现这一点的想法。 这里有一个演示,但我不明白。我想知道dexlib2是否可以用来编写或重写dex文件 DexRewriter rewriter = new DexRewriter(new RewriterModule() { public Rewriter<String> getTypeRewriter(Rewriters rewriters) { return new Rewriter<String>
DexRewriter rewriter = new DexRewriter(new RewriterModule() {
public Rewriter<String> getTypeRewriter(Rewriters rewriters) {
return new Rewriter<String>() {
public String rewrite(String value) {
if (value.equals("Lorg/blah/MyBlah;")) {
return "Lorg/blah/YourBlah;";
}
return value;
}
};
}
});
DexFile rewrittenDexFile = rewriter.rewriteDexFile(dexFile);
dexrewiter rewriter=新的dexrewiter(新的RewriterModule()){
公共重写器getTypeRewriter(重写器重写器){
返回新的重写器(){
公共字符串重写(字符串值){
if(value.equals(“Lorg/blah/MyBlah;”){
返回“Lorg/blah/YourBlah;”;
}
返回值;
}
};
}
});
DexFile rewritendexfile=rewriter.rewriteDexFile(DexFile);
dexlib2源代码在这里还有另一个演示,但很难理解您的方向是正确的。什么东西不适合你?试试这个链接这个代码可以解决这个问题