This commit is contained in:
南宫雪珊 2023-07-10 14:57:01 +08:00 committed by GitHub
parent a2db3f8b4e
commit 6986343d4d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 21 deletions

View File

@ -40,22 +40,16 @@ public class MetaDataReader {
}
private MetaDataReader(File apk) throws IOException {
try (JarFile zip = new JarFile(apk)) {
InputStream is = zip.getInputStream(zip.getEntry("AndroidManifest.xml"));
byte[] bytes = getBytesFromInputStream(is);
AxmlReader reader = null;
if (bytes != null) {
reader = new AxmlReader(bytes);
}
if (reader != null) {
reader.accept(new AxmlVisitor() {
@Override
public NodeVisitor child(String ns, String name) {
NodeVisitor child = super.child(ns, name);
return new ManifestTagVisitor(child);
}
});
}
try (JarFile zip = new JarFile(apk);
var is = zip.getInputStream(zip.getEntry("AndroidManifest.xml"))) {
var reader = new AxmlReader(getBytesFromInputStream(is));
reader.accept(new AxmlVisitor() {
@Override
public NodeVisitor child(String ns, String name) {
NodeVisitor child = super.child(ns, name);
return new ManifestTagVisitor(child);
}
});
}
}
@ -67,10 +61,7 @@ public class MetaDataReader {
bos.write(b, 0, n);
}
return bos.toByteArray();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
private class ManifestTagVisitor extends NodeVisitor {

View File

@ -70,7 +70,6 @@ import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Locale;
import java.util.stream.Collectors;
import java.util.zip.Deflater;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
@ -241,7 +240,7 @@ public class ConfigFileManager {
}
static void getLogs(ParcelFileDescriptor zipFd) throws IllegalStateException {
try (var os = new ZipOutputStream(new FileOutputStream(zipFd.getFileDescriptor()))) {
try (zipFd; var os = new ZipOutputStream(new FileOutputStream(zipFd.getFileDescriptor()))) {
var comment = String.format(Locale.ROOT, "LSPosed %s %s (%d)",
BuildConfig.BUILD_TYPE, BuildConfig.VERSION_NAME, BuildConfig.VERSION_CODE);
os.setComment(comment);