From d63088db9f0ed14d6a069afe5dcf057db27884b5 Mon Sep 17 00:00:00 2001 From: Connor Tumbleson Date: Mon, 30 Nov 2020 06:35:27 -0500 Subject: [PATCH] feat: method to list frameworks --- .../src/main/java/brut/androlib/Androlib.java | 4 ++++ .../java/brut/androlib/res/AndrolibResources.java | 14 ++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/brut.apktool/apktool-lib/src/main/java/brut/androlib/Androlib.java b/brut.apktool/apktool-lib/src/main/java/brut/androlib/Androlib.java index df3ec28c..518ca571 100644 --- a/brut.apktool/apktool-lib/src/main/java/brut/androlib/Androlib.java +++ b/brut.apktool/apktool-lib/src/main/java/brut/androlib/Androlib.java @@ -714,6 +714,10 @@ public class Androlib { mAndRes.installFramework(frameFile); } + public void listFrameworks() throws AndrolibException { + mAndRes.listFrameworkDirectory(); + } + public void emptyFrameworkDirectory() throws AndrolibException { mAndRes.emptyFrameworkDirectory(); } diff --git a/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/AndrolibResources.java b/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/AndrolibResources.java index aeaa2219..90f87dbc 100644 --- a/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/AndrolibResources.java +++ b/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/AndrolibResources.java @@ -854,6 +854,20 @@ final public class AndrolibResources { } } + public void listFrameworkDirectory() throws AndrolibException { + File dir = getFrameworkDir(); + if (dir == null) { + LOGGER.severe("No framework directory found. Nothing to list."); + return; + } + + for (File file : Objects.requireNonNull(dir.listFiles())) { + if (file.isFile() && file.getName().endsWith(".apk")) { + LOGGER.info(file.getName()); + } + } + } + public void installFramework(File frameFile) throws AndrolibException { installFramework(frameFile, apkOptions.frameworkTag); }