diff --git a/brut.apktool/apktool-lib/src/main/java/brut/androlib/ApkDecoder.java b/brut.apktool/apktool-lib/src/main/java/brut/androlib/ApkDecoder.java index 73b3d8b1..4bf5b001 100644 --- a/brut.apktool/apktool-lib/src/main/java/brut/androlib/ApkDecoder.java +++ b/brut.apktool/apktool-lib/src/main/java/brut/androlib/ApkDecoder.java @@ -345,6 +345,7 @@ public class ApkDecoder { putPackageInfo(meta); putVersionInfo(meta); putSharedLibraryInfo(meta); + putSparseResourcesInfo(meta); } putUnknownInfo(meta); putFileCompressionInfo(meta); @@ -421,6 +422,10 @@ public class ApkDecoder { } } + private void putSparseResourcesInfo(MetaInfo meta) throws AndrolibException { + meta.sparseResources = mResTable.getSparseResources(); + } + private void putSharedLibraryInfo(MetaInfo meta) throws AndrolibException { meta.sharedLibrary = mResTable.getSharedLibrary(); } diff --git a/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/data/ResTable.java b/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/data/ResTable.java index fbee2a75..79a350fd 100644 --- a/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/data/ResTable.java +++ b/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/data/ResTable.java @@ -39,6 +39,7 @@ public class ResTable { private int mPackageId; private boolean mAnalysisMode = false; private boolean mSharedLibrary = false; + private boolean mSparseResources = false; private Map mSdkInfo = new LinkedHashMap<>(); private VersionInfo mVersionInfo = new VersionInfo(); @@ -170,6 +171,10 @@ public class ResTable { mSharedLibrary = flag; } + public void setSparseResources(boolean flag) { + mSparseResources = flag; + } + public void clearSdkInfo() { mSdkInfo.clear(); } @@ -213,4 +218,8 @@ public class ResTable { public boolean getSharedLibrary() { return mSharedLibrary; } + + public boolean getSparseResources() { + return mSparseResources; + } }