diff --git a/jadx-gui/build.gradle b/jadx-gui/build.gradle index 712c5f332..3b30e9695 100644 --- a/jadx-gui/build.gradle +++ b/jadx-gui/build.gradle @@ -17,7 +17,7 @@ dependencies { compile 'io.reactivex.rxjava2:rxjava:2.2.11' compile "com.github.akarnokd:rxjava2-swing:0.3.7" - compile 'com.android.tools.build:apksig:3.4.2' + compile 'com.android.tools.build:apksig:3.5.1' } application { diff --git a/jadx-gui/src/main/java/jadx/gui/treemodel/ApkSignature.java b/jadx-gui/src/main/java/jadx/gui/treemodel/ApkSignature.java index 44875b7d0..5e280f416 100644 --- a/jadx-gui/src/main/java/jadx/gui/treemodel/ApkSignature.java +++ b/jadx-gui/src/main/java/jadx/gui/treemodel/ApkSignature.java @@ -5,7 +5,8 @@ import java.security.cert.Certificate; import java.util.List; import java.util.stream.Collectors; -import javax.swing.*; +import javax.swing.Icon; +import javax.swing.ImageIcon; import org.apache.commons.lang3.exception.ExceptionUtils; import org.apache.commons.text.StringEscapeUtils; @@ -83,7 +84,6 @@ public class ApkSignature extends JNode { final String sigFailKey = "apkSignature.signatureFailed"; writeIssues(builder, err, result.getErrors()); - writeIssues(builder, warn, result.getWarnings()); if (!result.getV1SchemeSigners().isEmpty()) { builder.append("
"); + for (ApkVerifier.Result.V3SchemeSignerInfo signer : result.getV3SchemeSigners()) { + builder.append(""); + } + writeIssues(builder, warn, result.getWarnings()); + this.content = builder.toString(); } catch (Exception e) { LOG.error(e.getMessage(), e);"); + builder.escape(NLS.str("apkSignature.signer")); + builder.append(" "); + builder.append(Integer.toString(signer.getIndex() + 1)); + builder.append("
"); + writeCertificate(builder, signer.getCertificate()); + writeIssues(builder, err, signer.getErrors()); + writeIssues(builder, warn, signer.getWarnings()); + } + builder.append("