From 07ab4f180810ac82509f28da195d3976a06e84bc Mon Sep 17 00:00:00 2001 From: Liu Dong Date: Tue, 3 Oct 2017 10:19:39 +0800 Subject: [PATCH] close jar file; bump version --- README.md | 2 +- pom.xml | 4 +-- .../dongliu/apk/parser/AbstractApkFile.java | 2 +- .../java/net/dongliu/apk/parser/ApkFile.java | 31 ++++++++++--------- .../net/dongliu/apk/parser/ApkParsers.java | 2 +- .../apk/parser/parser/CertificateParser.java | 4 +-- 6 files changed, 23 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 16f80c9..93b4353 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ Apk-parser has been submitted to maven central repo. With maven, you can add apk net.dongliu apk-parser - 2.2.0 + 2.2.1 ``` From version 2.0, apk-parser requires java7. The last version support java6 is 1.7.4. diff --git a/pom.xml b/pom.xml index fee8634..37565b5 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ apk-parser apk-parser jar - 2.2.0 + 2.2.1 https://github.com/xiaxiaocao/apk-parser @@ -92,7 +92,7 @@ org.apache.maven.plugins maven-javadoc-plugin - 2.9.1 + 2.10.4 attach-javadoc diff --git a/src/main/java/net/dongliu/apk/parser/AbstractApkFile.java b/src/main/java/net/dongliu/apk/parser/AbstractApkFile.java index fb88d56..b73462c 100644 --- a/src/main/java/net/dongliu/apk/parser/AbstractApkFile.java +++ b/src/main/java/net/dongliu/apk/parser/AbstractApkFile.java @@ -15,7 +15,7 @@ /** * Common Apk Parser methods. - * This Class is not thread-safe + * This Class is not thread-safe. * * @author Liu Dong */ diff --git a/src/main/java/net/dongliu/apk/parser/ApkFile.java b/src/main/java/net/dongliu/apk/parser/ApkFile.java index 0f9ca70..7d4fcfa 100644 --- a/src/main/java/net/dongliu/apk/parser/ApkFile.java +++ b/src/main/java/net/dongliu/apk/parser/ApkFile.java @@ -75,23 +75,24 @@ public ApkSignStatus verifyApk() throws IOException { return ApkSignStatus.notSigned; } - JarFile jarFile = new JarFile(this.apkFile); - Enumeration entries = jarFile.entries(); - byte[] buffer = new byte[8192]; + try (JarFile jarFile = new JarFile(this.apkFile)) { + Enumeration entries = jarFile.entries(); + byte[] buffer = new byte[8192]; - while (entries.hasMoreElements()) { - JarEntry e = entries.nextElement(); - if (e.isDirectory()) { - continue; - } - try (InputStream in = jarFile.getInputStream(e)) { - // Read in each jar entry. A security exception will be thrown if a signature/digest check fails. - int count; - while ((count = in.read(buffer, 0, buffer.length)) != -1) { - // Don't care + while (entries.hasMoreElements()) { + JarEntry e = entries.nextElement(); + if (e.isDirectory()) { + continue; + } + try (InputStream in = jarFile.getInputStream(e)) { + // Read in each jar entry. A security exception will be thrown if a signature/digest check fails. + int count; + while ((count = in.read(buffer, 0, buffer.length)) != -1) { + // Don't care + } + } catch (SecurityException se) { + return ApkSignStatus.incorrect; } - } catch (SecurityException se) { - return ApkSignStatus.incorrect; } } return ApkSignStatus.signed; diff --git a/src/main/java/net/dongliu/apk/parser/ApkParsers.java b/src/main/java/net/dongliu/apk/parser/ApkParsers.java index 4228712..0a98ad5 100644 --- a/src/main/java/net/dongliu/apk/parser/ApkParsers.java +++ b/src/main/java/net/dongliu/apk/parser/ApkParsers.java @@ -7,7 +7,7 @@ import java.util.Locale; /** - * Static utils method for parse apk file + * Convenient utils method for parse apk file * * @author Liu Dong */ diff --git a/src/main/java/net/dongliu/apk/parser/parser/CertificateParser.java b/src/main/java/net/dongliu/apk/parser/parser/CertificateParser.java index 071d902..f3eb81c 100644 --- a/src/main/java/net/dongliu/apk/parser/parser/CertificateParser.java +++ b/src/main/java/net/dongliu/apk/parser/parser/CertificateParser.java @@ -61,13 +61,13 @@ public void parse() throws IOException, CertificateException { private String md5Digest(byte[] input) throws IOException { - MessageDigest digest = getDigest("Md5"); + MessageDigest digest = getDigest("md5"); digest.update(input); return getHexString(digest.digest()); } private String md5Digest(String input) throws IOException { - MessageDigest digest = getDigest("Md5"); + MessageDigest digest = getDigest("md5"); digest.update(input.getBytes(StandardCharsets.UTF_8)); return getHexString(digest.digest()); }