cookie提取dex文件

有时候在java层能获取dex文件的cookie,但是在java不能从cookie得到dex,如果想要获取只能通过jni在C层实现,具体实现代码如下(nexus手机4.4系统)

static void dumpDex(JNIEnv *env, jobject object, jint gcookie) {
    int cookie = gcookie;

    DexOrJar *a = (struct DexOrJar *) cookie;

    int len = a->pDexMemory[34] << 16 | a->pDexMemory[33] << 8 | a->pDexMemory[32];

    int fd = open("/data/local/tmp/1.dex", O_RDWR | O_CREAT);
    write(fd, a->pDexMemory, len);
    close(fd);
}
posted @ 2017-12-05 17:47  Gordon0918  阅读(698)  评论(0编辑  收藏  举报