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

View File

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