资源简介
将多个脱壳后的dex合并,命名为classes.dex classes2.dex classes3.dex和meta-inf一起压缩成.zip改名为.apk,拖进jeb3。
代码片段和文件信息
/*
* dex2jar - Tools to work with android .dex and java .class files
* Copyright (c) 2009-2012 Panxiaobo
*
* Licensed under the Apache License Version 2.0 (the “License“);
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing software
* distributed under the License is distributed on an “AS IS“ BASIS
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.googlecode.dex2jar.tools;
import java.io.File;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.nio.charset.StandardCharsets;
import java.nio.file.*;
import java.nio.file.attribute.BasicFileAttributes;
import java.nio.file.spi.FileSystemProvider;
import java.util.*;
public abstract class baseCmd {
public static String getbaseName(String fn) {
int x = fn.lastIndexOf(‘.‘);
return x >= 0 ? fn.substring(0 x) : fn;
}
public static String getbaseName(Path fn) {
return getbaseName(fn.getFileName().toString());
}
public interface FileVisitorX {
// change the relative from Path to String
// java.nio.file.ProviderMismatchException on jdk8
void visitFile(Path file String relative) throws IOException;
}
public static void walkFileTreeX(final Path base final FileVisitorX fv) throws IOException {
Files.walkFileTree(base new SimpleFileVisitor() {
@Override
public FileVisitResult visitFile(Path file BasicFileAttributes attrs) throws IOException {
fv.visitFile(file base.relativize(file).toString());
return super.visitFile(file attrs);
}
});
}
public static void walkJarOrDir(final Path in final FileVisitorX fv) throws IOException {
if (Files.isDirectory(in)) {
walkFileTreeX(in fv);
} else {
try (FileSystem inputFileSystem = openZip(in)) {
walkFileTreeX(inputFileSystem.getPath(“/“) fv);
}
}
}
public static void createParentDirectories(Path p) throws IOException {
// merge patch from t3stwhat fix crash on save to windows path like ‘C:\\abc.jar‘
Path parent = p.getParent();
if (parent != null && !Files.exists(parent)) {
Files.createDirectories(parent);
}
}
public static FileSystem createZip(Path output) throws IOException {
Map
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\
文件 1842 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\pom.xm
目录 0 2020-08-16 13:51 __MACOSX\
目录 0 2020-08-16 13:51 __MACOSX\dex2jar-2.1-nightly-28\
目录 0 2020-08-16 13:51 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\
文件 212 2018-04-01 20:31 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\._pom.xm
文件 322 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\build.gradle
文件 212 2018-04-01 20:31 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\._build.gradle
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\resources\
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\resources\jasmins\
文件 942 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\resources\jasmins\type.j
目录 0 2020-08-16 13:51 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\src\
目录 0 2020-08-16 13:51 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\src\test\
目录 0 2020-08-16 13:51 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\src\test\resources\
目录 0 2020-08-16 13:51 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\src\test\resources\jasmins\
文件 212 2018-04-01 20:31 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\src\test\resources\jasmins\._type.j
文件 212 2018-04-01 20:31 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\src\test\resources\._jasmins
文件 212 2018-04-01 20:31 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\src\test\._resources
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\java\
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\java\com\
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\java\com\googlecode\
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\java\com\googlecode\d2j\
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\java\com\googlecode\d2j\tools\
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\java\com\googlecode\d2j\tools\jar\
目录 0 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\java\com\googlecode\d2j\tools\jar\test\
文件 3729 2018-04-01 20:31 dex2jar-2.1-nightly-28\d2j-jasmin\src\test\java\com\googlecode\d2j\tools\jar\test\Jasmin2jTest.java
目录 0 2020-08-16 13:51 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\src\test\java\
目录 0 2020-08-16 13:51 __MACOSX\dex2jar-2.1-nightly-28\d2j-jasmin\src\test\java\com\
............此处省略1368个文件信息
- 上一篇:My12306购票系统
- 下一篇:用java写socket.io客户端所需jar包
评论
共有 条评论