META-INF/
META-INF/MANIFEST.MF
com/
com/android/
com/android/tools/
com/android/tools/apk/
com/android/tools/apk/analyzer/
com/android/tools/apk/analyzer/AaptInvoker.class
AaptInvoker.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.AaptInvoker extends java.lang.Object {
private final java.nio.file.Path aapt
private final com.android.ide.common.process.DefaultProcessExecutor processExecutor
public void <init> (java.nio.file.Path, com.android.utils.ILogger)
java.nio.file.Path aaptPath
com.android.utils.ILogger logger
public void <init> (com.android.sdklib.repository.AndroidSdkHandler, com.android.utils.ILogger)
com.android.sdklib.repository.AndroidSdkHandler sdkHandler
com.android.utils.ILogger logger
private boolean isAapt2 ()
private transient java.util.List invokeAaptWithParameters (java.io.File, java.lang.String, java.lang.String[]) throws com.android.ide.common.process.ProcessException
java.io.File apkFile
String resource
String[] parameters
String[] params
private transient java.util.List invokeAaptWithParameters (java.lang.String[]) throws com.android.ide.common.process.ProcessException
String[] parameters
com.android.ide.common.process.ProcessInfoBuilder builder
com.android.ide.common.process.CachedProcessOutputHandler processOutputHandler
com.android.ide.common.process.ProcessResult result
com.android.ide.common.process.BaseProcessOutputHandler$BaseProcessOutput output
com.android.utils.LineCollector lineCollector
public java.util.List getXmlStrings (java.io.File, java.lang.String) throws com.android.ide.common.process.ProcessException
java.io.File apk
String xmlResourcePath
public java.util.List getXmlTree (java.io.File, java.lang.String) throws com.android.ide.common.process.ProcessException
java.io.File apk
String xmlResourcePath
public java.util.List dumpBadging (java.io.File) throws com.android.ide.common.process.ProcessException
java.io.File apk
public java.util.List dumpResources (java.io.File) throws com.android.ide.common.process.ProcessException
java.io.File apk
public static java.nio.file.Path getPathToAapt (com.android.sdklib.repository.AndroidSdkHandler, com.android.utils.ILogger)
com.android.sdklib.repository.AndroidSdkHandler sdkHandler
com.android.utils.ILogger logger
com.android.sdklib.BuildToolInfo latestBuildTool
}
com/android/tools/apk/analyzer/AndroidApplicationInfo$1.class
AndroidApplicationInfo.java
package com.android.tools.apk.analyzer
synthetic com.android.tools.apk.analyzer.AndroidApplicationInfo$1 extends java.lang.Object {
}
com/android/tools/apk/analyzer/AndroidApplicationInfo$Builder.class
AndroidApplicationInfo.java
package com.android.tools.apk.analyzer
com.android.tools.apk.analyzer.AndroidApplicationInfo$Builder extends java.lang.Object {
public String packageId
public String versionName
public long versionCode
private final java.util.Map usesFeature
private final java.util.Set usesFeatureNotRequired
private final java.util.Set permissions
private void <init> ()
public void setPackageId (java.lang.String)
String packageId
public void setVersionName (java.lang.String)
String versionName
public void setVersionCode (long)
long versionCode
public void addFeature (java.lang.String)
String name
public void addImpliedFeature (java.lang.String, java.lang.String)
String name
String reason
public void addFeatureNotRequired (java.lang.String)
String name
public com.android.tools.apk.analyzer.AndroidApplicationInfo build ()
public void addPermission (java.lang.String)
String name
synthetic void <init> (com.android.tools.apk.analyzer.AndroidApplicationInfo$1)
com.android.tools.apk.analyzer.AndroidApplicationInfo$1 x0
}
com/android/tools/apk/analyzer/AndroidApplicationInfo.class
AndroidApplicationInfo.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.AndroidApplicationInfo extends java.lang.Object {
public static final com.android.tools.apk.analyzer.AndroidApplicationInfo UNKNOWN
public final String packageId
public final String versionName
public final long versionCode
private final java.util.Map usesFeature
private final java.util.Set usesFeatureNotRequired
private static final java.util.regex.Pattern impliedFeaturePattern
private static final java.util.regex.Pattern packagePattern
private final java.util.Set permissions
public void <init> (java.lang.String, java.lang.String, long)
String packageId
String versionName
long versionCode
public void <init> (java.lang.String, java.lang.String, long, java.util.Map, java.util.Set, java.util.Set)
String packageId
String versionName
long versionCode
java.util.Map usesFeature
java.util.Set usesFeatureNotRequired
java.util.Set permissions
public static com.android.tools.apk.analyzer.AndroidApplicationInfo parse (java.util.List)
NumberFormatException e
String versionCodeStr
int endParenthesis
int eqIndex
int endQuote
int eqIndex
int endQuote
int eqIndex
String line
java.util.List output
String packageId
long versionCode
String versionName
public static com.android.tools.apk.analyzer.AndroidApplicationInfo parseBadging (java.util.List)
NumberFormatException e
java.util.regex.Matcher matcher
String name
java.util.regex.Matcher matcher
String name
String name
String line
java.util.List output
com.android.tools.apk.analyzer.AndroidApplicationInfo$Builder builder
public java.util.Map getUsesFeature ()
public java.util.Set getUsesFeatureNotRequired ()
public java.util.Set getPermissions ()
static void <clinit> ()
}
com/android/tools/apk/analyzer/ApkSizeCalculator.class
ApkSizeCalculator.java
package com.android.tools.apk.analyzer
public abstract com.android.tools.apk.analyzer.ApkSizeCalculator extends java.lang.Object {
public abstract long getFullApkDownloadSize (java.nio.file.Path)
public abstract long getFullApkRawSize (java.nio.file.Path)
public abstract java.util.Map getDownloadSizePerFile (java.nio.file.Path)
public abstract java.util.Map getRawSizePerFile (java.nio.file.Path)
public static com.android.tools.apk.analyzer.ApkSizeCalculator getDefault ()
}
com/android/tools/apk/analyzer/Archive.class
Archive.java
package com.android.tools.apk.analyzer
public abstract com.android.tools.apk.analyzer.Archive extends java.lang.Object implements java.lang.AutoCloseable {
public abstract java.nio.file.Path getPath ()
public abstract java.nio.file.Path getContentRoot ()
public abstract boolean isBinaryXml (java.nio.file.Path, byte[])
public abstract boolean isProtoXml (java.nio.file.Path, byte[])
public abstract boolean isBaselineProfile (java.nio.file.Path, byte[])
public abstract void close () throws java.io.IOException
}
com/android/tools/apk/analyzer/ArchiveContext.class
ArchiveContext.java
package com.android.tools.apk.analyzer
public abstract com.android.tools.apk.analyzer.ArchiveContext extends java.lang.Object implements java.lang.AutoCloseable {
public abstract com.android.tools.apk.analyzer.Archive getArchive ()
public abstract com.android.tools.apk.analyzer.ArchiveManager getArchiveManager ()
public abstract void close () throws java.io.IOException
}
com/android/tools/apk/analyzer/ArchiveEntry.class
ArchiveEntry.java
package com.android.tools.apk.analyzer
public abstract com.android.tools.apk.analyzer.ArchiveEntry extends java.lang.Object {
private final com.android.tools.apk.analyzer.Archive archive
private final java.nio.file.Path path
private final String pathPrefix
static final synthetic boolean $assertionsDisabled
public void <init> (com.android.tools.apk.analyzer.Archive, java.nio.file.Path, java.lang.String)
com.android.tools.apk.analyzer.Archive archive
java.nio.file.Path path
String pathPrefix
public void setRawFileSize (long)
long rawFileSize
public long getRawFileSize ()
public void setDownloadFileSize (long)
long downloadFileSize
public long getDownloadFileSize ()
public java.nio.file.Path getPath ()
public java.lang.String getPathPrefix ()
public com.android.tools.apk.analyzer.Archive getArchive ()
public abstract java.lang.String getNodeDisplayString ()
public abstract java.lang.String getSummaryDisplayString ()
public java.lang.String toString ()
static void <clinit> ()
}
com/android/tools/apk/analyzer/ArchiveErrorEntry.class
ArchiveErrorEntry.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.ArchiveErrorEntry extends com.android.tools.apk.analyzer.ArchiveEntry {
private final Throwable myError
public void <init> (com.android.tools.apk.analyzer.Archive, java.nio.file.Path, java.lang.String, java.lang.Throwable)
com.android.tools.apk.analyzer.Archive archive
java.nio.file.Path path
String pathPrefix
Throwable error
public java.lang.String getNodeDisplayString ()
String errorMessage
public java.lang.String getSummaryDisplayString ()
}
com/android/tools/apk/analyzer/ArchiveManager.class
ArchiveManager.java
package com.android.tools.apk.analyzer
public abstract com.android.tools.apk.analyzer.ArchiveManager extends java.lang.Object implements java.io.Closeable {
public abstract com.android.tools.apk.analyzer.ArchiveContext openArchive (java.nio.file.Path) throws java.io.IOException
public abstract com.android.tools.apk.analyzer.Archive openInnerArchive (com.android.tools.apk.analyzer.Archive, java.nio.file.Path) throws java.io.IOException
}
com/android/tools/apk/analyzer/ArchiveNode.class
ArchiveNode.java
package com.android.tools.apk.analyzer
public abstract com.android.tools.apk.analyzer.ArchiveNode extends java.lang.Object implements javax.swing.tree.TreeNode {
public abstract java.util.List getChildren ()
public abstract com.android.tools.apk.analyzer.ArchiveNode getParent ()
public abstract com.android.tools.apk.analyzer.ArchiveEntry getData ()
public volatile synthetic javax.swing.tree.TreeNode getParent ()
}
com/android/tools/apk/analyzer/ArchivePathEntry.class
ArchivePathEntry.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.ArchivePathEntry extends com.android.tools.apk.analyzer.ArchiveEntry {
private long rawFileSize
private long downloadFileSize
public void <init> (com.android.tools.apk.analyzer.Archive, java.nio.file.Path, java.lang.String)
com.android.tools.apk.analyzer.Archive archive
java.nio.file.Path path
String pathPrefix
public void setRawFileSize (long)
long rawFileSize
public long getRawFileSize ()
public void setDownloadFileSize (long)
long downloadFileSize
public long getDownloadFileSize ()
public java.lang.String getNodeDisplayString ()
java.nio.file.Path base
String name
public java.lang.String getSummaryDisplayString ()
private static java.lang.String trimEnd (java.lang.String, java.lang.String)
String s
String suffix
boolean endsWith
}
com/android/tools/apk/analyzer/ArchiveTreeStream.class
ArchiveTreeStream.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.ArchiveTreeStream extends java.lang.Object {
public void <init> ()
public static java.util.stream.Stream preOrderStream (com.android.tools.apk.analyzer.ArchiveNode)
com.android.tools.apk.analyzer.ArchiveNode node
public static java.util.stream.Stream postOrderStream (com.android.tools.apk.analyzer.ArchiveNode)
com.android.tools.apk.analyzer.ArchiveNode node
}
com/android/tools/apk/analyzer/ArchiveTreeStructure.class
ArchiveTreeStructure.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.ArchiveTreeStructure extends java.lang.Object {
static final synthetic boolean $assertionsDisabled
public void <init> ()
public static com.android.tools.apk.analyzer.ArchiveNode create (com.android.tools.apk.analyzer.ArchiveContext)
com.android.tools.apk.analyzer.ArchiveContext archiveContext
private static com.android.tools.apk.analyzer.ArchiveNode createWorker (com.android.tools.apk.analyzer.ArchiveManager, com.android.tools.apk.analyzer.Archive, java.lang.String)
com.android.tools.apk.analyzer.Archive innerArchive
Throwable e
com.android.tools.apk.analyzer.ArchiveNode archiveNodeChild
com.android.tools.apk.analyzer.internal.ArchiveTreeNode newArchiveNode
com.android.tools.apk.analyzer.internal.ArchiveTreeNode childNode
com.android.tools.apk.analyzer.internal.ArchiveTreeNode childNode
com.android.tools.apk.analyzer.Archive innerArchive
java.nio.file.Path childPath
java.nio.file.DirectoryStream stream
java.io.IOException e
com.android.tools.apk.analyzer.internal.ArchiveTreeNode node
java.nio.file.Path path
com.android.tools.apk.analyzer.ArchiveManager archiveManager
com.android.tools.apk.analyzer.Archive archive
String pathPrefix
java.nio.file.Path contentRoot
com.android.tools.apk.analyzer.internal.ArchiveTreeNode rootNode
java.util.Stack stack
private static com.android.tools.apk.analyzer.internal.ArchiveTreeNode createErrorNode (com.android.tools.apk.analyzer.Archive, java.nio.file.Path, java.lang.String, java.lang.Throwable)
com.android.tools.apk.analyzer.Archive archive
java.nio.file.Path childPath
String pathPrefix
Throwable error
com.android.tools.apk.analyzer.internal.ArchiveTreeNode childNode
public static void updateRawFileSizes (com.android.tools.apk.analyzer.ArchiveNode, com.android.tools.apk.analyzer.ApkSizeCalculator)
java.util.Map rawFileSizes
com.android.tools.apk.analyzer.ArchiveNode root
com.android.tools.apk.analyzer.ApkSizeCalculator calculator
java.util.Map rawFileSizes
public static void updateDownloadFileSizes (com.android.tools.apk.analyzer.ArchiveNode, com.android.tools.apk.analyzer.ApkSizeCalculator)
java.util.Map downloadFileSizes
com.android.tools.apk.analyzer.ArchiveNode root
com.android.tools.apk.analyzer.ApkSizeCalculator calculator
java.util.Map downloadFileSizes
public static void sort (com.android.tools.apk.analyzer.ArchiveNode, java.util.Comparator)
com.android.tools.apk.analyzer.ArchiveNode root
java.util.Comparator comparator
private static void sort (com.android.tools.apk.analyzer.internal.ArchiveTreeNode, java.util.Comparator)
com.android.tools.apk.analyzer.ArchiveNode child
com.android.tools.apk.analyzer.internal.ArchiveTreeNode root
java.util.Comparator comparator
java.util.List children
private static synthetic void lambda$updateDownloadFileSizes$5 (com.android.tools.apk.analyzer.ArchiveNode)
Long sizeOfAllChildren
com.android.tools.apk.analyzer.ArchiveNode node
com.android.tools.apk.analyzer.ArchiveEntry data
private static synthetic java.lang.Long lambda$updateDownloadFileSizes$4 (com.android.tools.apk.analyzer.ArchiveNode)
com.android.tools.apk.analyzer.ArchiveNode n
private static synthetic void lambda$updateDownloadFileSizes$3 (com.android.tools.apk.analyzer.ArchiveNode, com.android.tools.apk.analyzer.ApkSizeCalculator, java.util.Map, com.android.tools.apk.analyzer.ArchiveNode)
com.android.tools.apk.analyzer.ArchiveNode root
com.android.tools.apk.analyzer.ApkSizeCalculator calculator
java.util.Map downloadFileSizes
com.android.tools.apk.analyzer.ArchiveNode node
com.android.tools.apk.analyzer.ArchiveEntry data
Long downloadFileSize
private static synthetic void lambda$updateRawFileSizes$2 (com.android.tools.apk.analyzer.ArchiveNode)
Long sizeOfAllChildren
com.android.tools.apk.analyzer.ArchiveNode node
com.android.tools.apk.analyzer.ArchiveEntry data
private static synthetic java.lang.Long lambda$updateRawFileSizes$1 (com.android.tools.apk.analyzer.ArchiveNode)
com.android.tools.apk.analyzer.ArchiveNode n
private static synthetic void lambda$updateRawFileSizes$0 (com.android.tools.apk.analyzer.ArchiveNode, com.android.tools.apk.analyzer.ApkSizeCalculator, java.util.Map, com.android.tools.apk.analyzer.ArchiveNode)
com.android.tools.apk.analyzer.ArchiveNode root
com.android.tools.apk.analyzer.ApkSizeCalculator calculator
java.util.Map rawFileSizes
com.android.tools.apk.analyzer.ArchiveNode node
com.android.tools.apk.analyzer.ArchiveEntry data
Long rawFileSize
static void <clinit> ()
}
com/android/tools/apk/analyzer/Archives.class
Archives.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.Archives extends java.lang.Object {
public void <init> ()
public static com.android.tools.apk.analyzer.ArchiveContext open (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path path
public static com.android.tools.apk.analyzer.ArchiveContext open (java.nio.file.Path, com.android.utils.ILogger) throws java.io.IOException
java.nio.file.Path path
com.android.utils.ILogger logger
com.android.tools.apk.analyzer.internal.ArchiveManagerImpl archiveManager
public static com.android.tools.apk.analyzer.ArchiveEntry getFirstManifestArchiveEntry (com.android.tools.apk.analyzer.ArchiveNode)
com.android.tools.apk.analyzer.Archive archive
com.android.tools.apk.analyzer.internal.AppBundleArchive appBundleArchive
com.android.tools.apk.analyzer.ArchiveNode baseDir
com.android.tools.apk.analyzer.ArchiveNode manifestDir
com.android.tools.apk.analyzer.ArchiveNode manifest
com.android.tools.apk.analyzer.ArchiveNode input
private static com.android.tools.apk.analyzer.ArchiveNode getChild (com.android.tools.apk.analyzer.ArchiveNode, java.nio.file.Path)
com.android.tools.apk.analyzer.ArchiveNode input
java.nio.file.Path path
private static com.android.tools.apk.analyzer.ArchiveEntry getTopLevelManifestEntry (com.android.tools.apk.analyzer.ArchiveNode, com.android.tools.apk.analyzer.Archive)
com.android.tools.apk.analyzer.ArchiveNode input
com.android.tools.apk.analyzer.Archive archive
java.nio.file.Path path
private static synthetic boolean lambda$getTopLevelManifestEntry$2 (java.nio.file.Path, com.android.tools.apk.analyzer.ArchiveNode)
java.nio.file.Path path
com.android.tools.apk.analyzer.ArchiveNode x
private static synthetic boolean lambda$getChild$1 (java.nio.file.Path, com.android.tools.apk.analyzer.ArchiveNode)
java.nio.file.Path path
com.android.tools.apk.analyzer.ArchiveNode node
private static synthetic com.android.tools.apk.analyzer.ArchiveEntry lambda$getFirstManifestArchiveEntry$0 (com.android.tools.apk.analyzer.ArchiveNode)
com.android.tools.apk.analyzer.ArchiveEntry innerEntry
com.android.tools.apk.analyzer.ArchiveNode node
}
com/android/tools/apk/analyzer/BinaryXmlParser$1.class
BinaryXmlParser.java
package com.android.tools.apk.analyzer
synthetic com.android.tools.apk.analyzer.BinaryXmlParser$1 extends java.lang.Object {
static final synthetic int[] $SwitchMap$com$google$devrel$gmscore$tools$apk$arsc$BinaryResourceValue$Type
static void <clinit> ()
}
com/android/tools/apk/analyzer/BinaryXmlParser$XmlChunkHandler.class
BinaryXmlParser.java
package com.android.tools.apk.analyzer
abstract com.android.tools.apk.analyzer.BinaryXmlParser$XmlChunkHandler extends java.lang.Object {
public void stringPool (com.google.devrel.gmscore.tools.apk.arsc.StringPoolChunk)
com.google.devrel.gmscore.tools.apk.arsc.StringPoolChunk chunk
public void xmlResourceMap (com.google.devrel.gmscore.tools.apk.arsc.XmlResourceMapChunk)
com.google.devrel.gmscore.tools.apk.arsc.XmlResourceMapChunk chunk
public void startNamespace (com.google.devrel.gmscore.tools.apk.arsc.XmlNamespaceStartChunk)
com.google.devrel.gmscore.tools.apk.arsc.XmlNamespaceStartChunk chunk
public void endNamespace (com.google.devrel.gmscore.tools.apk.arsc.XmlNamespaceEndChunk)
com.google.devrel.gmscore.tools.apk.arsc.XmlNamespaceEndChunk chunk
public void startElement (com.google.devrel.gmscore.tools.apk.arsc.XmlStartElementChunk)
com.google.devrel.gmscore.tools.apk.arsc.XmlStartElementChunk chunk
public void endElement (com.google.devrel.gmscore.tools.apk.arsc.XmlEndElementChunk)
com.google.devrel.gmscore.tools.apk.arsc.XmlEndElementChunk chunk
}
com/android/tools/apk/analyzer/BinaryXmlParser$XmlPrinter.class
BinaryXmlParser.java
package com.android.tools.apk.analyzer
com.android.tools.apk.analyzer.BinaryXmlParser$XmlPrinter extends java.lang.Object implements com.android.tools.apk.analyzer.BinaryXmlParser$XmlChunkHandler {
private final com.android.xml.XmlBuilder builder
private java.util.Map namespaces
private boolean namespacesAdded
private com.google.devrel.gmscore.tools.apk.arsc.StringPoolChunk stringPool
private final com.android.tools.apk.analyzer.ResourceIdResolver resIdResolver
public void <init> (com.android.tools.apk.analyzer.ResourceIdResolver)
com.android.tools.apk.analyzer.ResourceIdResolver resourceIdResolver
public void stringPool (com.google.devrel.gmscore.tools.apk.arsc.StringPoolChunk)
com.google.devrel.gmscore.tools.apk.arsc.StringPoolChunk chunk
public void startNamespace (com.google.devrel.gmscore.tools.apk.arsc.XmlNamespaceStartChunk)
com.google.devrel.gmscore.tools.apk.arsc.XmlNamespaceStartChunk chunk
public void startElement (com.google.devrel.gmscore.tools.apk.arsc.XmlStartElementChunk)
java.util.Map$Entry entry
String prefix
com.google.devrel.gmscore.tools.apk.arsc.XmlAttribute xmlAttribute
com.google.devrel.gmscore.tools.apk.arsc.XmlStartElementChunk chunk
public static java.lang.String notNullize (java.lang.String)
String s
public void endElement (com.google.devrel.gmscore.tools.apk.arsc.XmlEndElementChunk)
com.google.devrel.gmscore.tools.apk.arsc.XmlEndElementChunk chunk
public java.lang.String getReconstructedXml ()
private java.lang.String getValue (com.google.devrel.gmscore.tools.apk.arsc.XmlAttribute)
com.google.devrel.gmscore.tools.apk.arsc.XmlAttribute attribute
String rawValue
com.google.devrel.gmscore.tools.apk.arsc.BinaryResourceValue resValue
}
com/android/tools/apk/analyzer/BinaryXmlParser.class
BinaryXmlParser.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.BinaryXmlParser extends java.lang.Object {
private static final java.text.DecimalFormat DECIMAL_FORMAT
private static final String[] DIMENSION_UNITS
private static final String[] FACTION_UNITS
private static final String UNKNOWN_UNIT
private static final int[] RADIX_SHIFTS
private static final int COMPLEX_RADIX_SHIFT
private static final int COMPLEX_RADIX_MASK
private static final int COMPLEX_MANTISSA_SHIFT
private static final int COMPLEX_MANTISSA_MASK
private static final int COMPLEX_UNIT_SHIFT
private static final int COMPLEX_UNIT_MASK
public void <init> ()
public static byte[] decodeXml (byte[], com.android.tools.apk.analyzer.ResourceIdResolver)
byte[] bytes
com.android.tools.apk.analyzer.ResourceIdResolver resIdResolver
com.google.devrel.gmscore.tools.apk.arsc.BinaryResourceFile file
java.util.List chunks
com.android.tools.apk.analyzer.BinaryXmlParser$XmlPrinter printer
com.google.devrel.gmscore.tools.apk.arsc.XmlChunk xmlChunk
String reconstructedXml
public static byte[] decodeXml (byte[])
byte[] bytes
private static void visitChunks (java.util.Map, com.android.tools.apk.analyzer.BinaryXmlParser$XmlChunkHandler)
com.google.devrel.gmscore.tools.apk.arsc.Chunk chunk
java.util.Map chunks
com.android.tools.apk.analyzer.BinaryXmlParser$XmlChunkHandler handler
java.util.List contentChunks
private static java.util.List sortByOffset (java.util.Map)
Integer offset
java.util.Map contentChunks
java.util.List offsets
java.util.List chunks
public static java.lang.String formatValue (com.google.devrel.gmscore.tools.apk.arsc.BinaryResourceValue, com.google.devrel.gmscore.tools.apk.arsc.StringPoolChunk, com.android.tools.apk.analyzer.ResourceIdResolver)
com.google.devrel.gmscore.tools.apk.arsc.BinaryResourceValue resValue
com.google.devrel.gmscore.tools.apk.arsc.StringPoolChunk stringPool
com.android.tools.apk.analyzer.ResourceIdResolver resourceIdResolver
int data
public static java.lang.String formatValue (com.google.devrel.gmscore.tools.apk.arsc.BinaryResourceValue, com.google.devrel.gmscore.tools.apk.arsc.StringPoolChunk)
com.google.devrel.gmscore.tools.apk.arsc.BinaryResourceValue resValue
com.google.devrel.gmscore.tools.apk.arsc.StringPoolChunk stringPool
private static java.lang.String complexToString (int, boolean)
int complexValue
boolean isFraction
int radix
long mantissa
float value
int unitType
String[] unitValues
String units
static void <clinit> ()
}
com/android/tools/apk/analyzer/FilteredTreeModel.class
FilteredTreeModel.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.FilteredTreeModel extends javax.swing.tree.DefaultTreeModel {
private final java.util.function.Predicate predicate
public void <init> (javax.swing.tree.TreeNode, java.util.function.Predicate)
javax.swing.tree.TreeNode treeNode
java.util.function.Predicate predicate
public java.lang.Object getChild (java.lang.Object, int)
Object result
int i
int n
Object parent
int index
String msg
public int getChildCount (java.lang.Object)
Object result
int i
int n
Object parent
int count
public int getIndexOfChild (java.lang.Object, java.lang.Object)
Object result
int i
int n
Object parent
Object child
int index
}
com/android/tools/apk/analyzer/InnerArchiveEntry.class
InnerArchiveEntry.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.InnerArchiveEntry extends com.android.tools.apk.analyzer.ArchivePathEntry {
private final com.android.tools.apk.analyzer.Archive innerArchive
public void <init> (com.android.tools.apk.analyzer.Archive, java.nio.file.Path, java.lang.String, com.android.tools.apk.analyzer.Archive)
com.android.tools.apk.analyzer.Archive archive
java.nio.file.Path path
String pathPrefix
com.android.tools.apk.analyzer.Archive innerArchive
public com.android.tools.apk.analyzer.ArchiveEntry asArchiveEntry ()
}
com/android/tools/apk/analyzer/PathUtils.class
PathUtils.java
package com.android.tools.apk.analyzer
public com.android.tools.apk.analyzer.PathUtils extends java.lang.Object {
public void <init> ()
public static java.lang.String pathWithTrailingSeparator (java.nio.file.Path)
String separator
java.nio.file.Path path
String pathString
public static java.lang.String fileNameWithTrailingSeparator (java.nio.file.Path)
String separator
java.nio.file.Path path
String pathString
}
com/android/tools/apk/analyzer/ResourceIdResolver.class
ResourceIdResolver.java
package com.android.tools.apk.analyzer
public abstract com.android.tools.apk.analyzer.ResourceIdResolver extends java.lang.Object {
public static final com.android.tools.apk.analyzer.ResourceIdResolver NO_RESOLUTION
public abstract java.lang.String resolve (int)
private static synthetic java.lang.String lambda$static$0 (int)
int i
static void <clinit> ()
}
com/android/tools/apk/analyzer/dex/
com/android/tools/apk/analyzer/dex/DexDisassembler$1$1.class
DexDisassembler.java
package com.android.tools.apk.analyzer.dex
com.android.tools.apk.analyzer.dex.DexDisassembler$1$1 extends com.android.tools.smali.dexlib2.rewriter.TypeRewriter {
final synthetic com.android.tools.apk.analyzer.dex.DexDisassembler$1 this$0
void <init> (com.android.tools.apk.analyzer.dex.DexDisassembler$1)
com.android.tools.apk.analyzer.dex.DexDisassembler$1 this$0
public java.lang.String rewrite (java.lang.String)
String typeName
public volatile synthetic java.lang.Object rewrite (java.lang.Object)
}
com/android/tools/apk/analyzer/dex/DexDisassembler$1$2.class
DexDisassembler.java
package com.android.tools.apk.analyzer.dex
com.android.tools.apk.analyzer.dex.DexDisassembler$1$2 extends com.android.tools.apk.analyzer.internal.rewriters.FieldReferenceWithNameRewriter {
final synthetic com.android.tools.apk.analyzer.dex.DexDisassembler$1 this$0
void <init> (com.android.tools.apk.analyzer.dex.DexDisassembler$1, com.android.tools.smali.dexlib2.rewriter.Rewriters)
com.android.tools.apk.analyzer.dex.DexDisassembler$1 this$0
com.android.tools.smali.dexlib2.rewriter.Rewriters rewriters
public java.lang.String rewriteName (com.android.tools.smali.dexlib2.iface.reference.FieldReference)
com.android.tools.smali.dexlib2.iface.reference.FieldReference fieldReference
}
com/android/tools/apk/analyzer/dex/DexDisassembler$1$3.class
DexDisassembler.java
package com.android.tools.apk.analyzer.dex
com.android.tools.apk.analyzer.dex.DexDisassembler$1$3 extends com.android.tools.apk.analyzer.internal.rewriters.MethodReferenceWithNameRewriter {
final synthetic com.android.tools.apk.analyzer.dex.DexDisassembler$1 this$0
void <init> (com.android.tools.apk.analyzer.dex.DexDisassembler$1, com.android.tools.smali.dexlib2.rewriter.Rewriters)
com.android.tools.apk.analyzer.dex.DexDisassembler$1 this$0
com.android.tools.smali.dexlib2.rewriter.Rewriters rewriters
public java.lang.String rewriteName (com.android.tools.smali.dexlib2.iface.reference.MethodReference)
com.android.tools.smali.dexlib2.iface.reference.MethodReference methodReference
}
com/android/tools/apk/analyzer/dex/DexDisassembler$1.class
DexDisassembler.java
package com.android.tools.apk.analyzer.dex
com.android.tools.apk.analyzer.dex.DexDisassembler$1 extends com.android.tools.smali.dexlib2.rewriter.RewriterModule {
final synthetic com.android.tools.proguard.ProguardMap val$map
void <init> (com.android.tools.proguard.ProguardMap)
public com.android.tools.smali.dexlib2.rewriter.Rewriter getTypeRewriter (com.android.tools.smali.dexlib2.rewriter.Rewriters)
com.android.tools.smali.dexlib2.rewriter.Rewriters rewriters
public com.android.tools.smali.dexlib2.rewriter.Rewriter getFieldReferenceRewriter (com.android.tools.smali.dexlib2.rewriter.Rewriters)
com.android.tools.smali.dexlib2.rewriter.Rewriters rewriters
public com.android.tools.smali.dexlib2.rewriter.Rewriter getMethodReferenceRewriter (com.android.tools.smali.dexlib2.rewriter.Rewriters)
com.android.tools.smali.dexlib2.rewriter.Rewriters rewriters
}
com/android/tools/apk/analyzer/dex/DexDisassembler.class
DexDisassembler.java
package com.android.tools.apk.analyzer.dex
public com.android.tools.apk.analyzer.dex.DexDisassembler extends java.lang.Object {
private final com.android.tools.smali.dexlib2.iface.DexFile dexFile
private final com.android.tools.proguard.ProguardMap proguardMap
public void <init> (com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile, com.android.tools.proguard.ProguardMap)
com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile dexFile
com.android.tools.proguard.ProguardMap proguardMap
public java.lang.String disassembleMethod (java.lang.String, java.lang.String) throws java.io.IOException
String fqcn
String methodDescriptor
java.util.Optional classDef
java.util.Optional method
public java.lang.String disassembleMethod (java.lang.String, com.android.tools.smali.dexlib2.iface.reference.MethodReference) throws java.io.IOException
String fqcn
com.android.tools.smali.dexlib2.iface.reference.MethodReference methodRef
java.util.Optional classDef
com.android.tools.smali.dexlib2.iface.reference.MethodReference finalMethodRef
java.util.Optional method
private static java.lang.String getMethodDexCode (com.android.tools.smali.dexlib2.iface.ClassDef, com.android.tools.smali.dexlib2.iface.Method) throws java.io.IOException
com.android.tools.smali.baksmali.Adaptors.MethodDefinition methodDefinition
com.android.tools.smali.dexlib2.iface.MethodImplementation methodImpl
com.android.tools.smali.baksmali.formatter.BaksmaliWriter iw
com.android.tools.smali.dexlib2.iface.ClassDef classDef
com.android.tools.smali.dexlib2.iface.Method method
com.android.tools.smali.baksmali.BaksmaliOptions options
com.android.tools.smali.baksmali.Adaptors.ClassDefinition classDefinition
java.io.StringWriter writer
public java.lang.String disassembleClass (java.lang.String) throws java.io.IOException
com.android.tools.smali.baksmali.formatter.BaksmaliWriter iw
String fqcn
java.util.Optional classDef
com.android.tools.smali.baksmali.BaksmaliOptions options
com.android.tools.smali.baksmali.Adaptors.ClassDefinition classDefinition
java.io.StringWriter writer
private static com.android.tools.smali.dexlib2.iface.DexFile rewriteDexFile (com.android.tools.smali.dexlib2.iface.DexFile, com.android.tools.proguard.ProguardMap)
com.android.tools.smali.dexlib2.iface.DexFile dexFile
com.android.tools.proguard.ProguardMap map
com.android.tools.smali.dexlib2.rewriter.DexRewriter rewriter
private static com.android.tools.smali.dexlib2.rewriter.DexRewriter getRewriter (com.android.tools.proguard.ProguardMap)
com.android.tools.proguard.ProguardMap map
private java.util.Optional getClassDef (java.lang.String)
String fqcn
private static synthetic boolean lambda$getClassDef$1 (java.lang.String, com.android.tools.smali.dexlib2.iface.ClassDef)
String fqcn
com.android.tools.smali.dexlib2.iface.ClassDef c
private static synthetic boolean lambda$disassembleMethod$0 (java.lang.String, com.android.tools.smali.dexlib2.iface.Method)
String methodDescriptor
com.android.tools.smali.dexlib2.iface.Method m
}
com/android/tools/apk/analyzer/dex/DexFileStats.class
DexFileStats.java
package com.android.tools.apk.analyzer.dex
public com.android.tools.apk.analyzer.dex.DexFileStats extends java.lang.Object {
public final int classCount
public final int definedMethodCount
public final int referencedMethodCount
private void <init> (int, int, int)
int classCount
int definedMethodCount
int referencedMethodCount
public static com.android.tools.apk.analyzer.dex.DexFileStats create (java.util.Collection)
com.android.tools.smali.dexlib2.dexbacked.DexBackedClassDef dexBackedClassDef
java.util.Set classes
com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile dexFile
java.util.Collection dexFiles
int definedMethodCount
int classesCount
int methodCount
}
com/android/tools/apk/analyzer/dex/DexFiles.class
DexFiles.java
package com.android.tools.apk.analyzer.dex
public final com.android.tools.apk.analyzer.dex.DexFiles extends java.lang.Object {
public static final int MAX_SUPPORTED_DEX_VERSION
private static final com.android.tools.smali.dexlib2.Opcodes DEFAULT_OPCODES
private void <init> ()
public static com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile getDexFile (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path p
public static com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile getDexFile (byte[])
com.android.tools.smali.dexlib2.util.DexUtil$UnsupportedFile e
byte[] contents
static void <clinit> ()
}
com/android/tools/apk/analyzer/dex/DexReferences.class
DexReferences.java
package com.android.tools.apk.analyzer.dex
public com.android.tools.apk.analyzer.dex.DexReferences extends java.lang.Object {
private final com.google.common.collect.Multimap referenceReferences
public static final java.util.Comparator NODE_COMPARATOR
static final synthetic boolean $assertionsDisabled
public void <init> (com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile[])
com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile[] files
private void gatherBackReferences (com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile[])
com.android.tools.smali.dexlib2.immutable.reference.ImmutableTypeReference immutableTypeRef
int i
int m
CharSequence parameterType
com.android.tools.smali.dexlib2.iface.reference.MethodReference methodReference
com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference typeRef
int i
int m
String iface
com.android.tools.smali.dexlib2.iface.Annotation annotation
com.android.tools.smali.dexlib2.iface.reference.Reference reference
com.android.tools.smali.dexlib2.iface.reference.Reference reference
com.android.tools.smali.dexlib2.iface.instruction.Instruction instruction
com.android.tools.smali.dexlib2.iface.Annotation annotation
com.android.tools.smali.dexlib2.dexbacked.DexBackedMethodImplementation impl
com.android.tools.smali.dexlib2.dexbacked.DexBackedMethod method
com.android.tools.smali.dexlib2.iface.Annotation annotation
com.android.tools.smali.dexlib2.dexbacked.DexBackedField field
com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference typeRef
com.android.tools.smali.dexlib2.dexbacked.DexBackedClassDef classDef
com.android.tools.smali.dexlib2.iface.reference.FieldReference fieldRef
com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference typeRef
int i
int m
java.util.Map typesByName
com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile file
com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile[] files
java.util.Map immutableReferencesBin
private void addAnnotation (java.util.Map, java.util.Map, com.android.tools.smali.dexlib2.iface.reference.Reference, com.android.tools.smali.dexlib2.iface.Annotation)
com.android.tools.smali.dexlib2.iface.value.EncodedValue value
com.android.tools.smali.dexlib2.iface.AnnotationElement element
java.util.Map immutableReferencesBin
java.util.Map typesByName
com.android.tools.smali.dexlib2.iface.reference.Reference ref
com.android.tools.smali.dexlib2.iface.Annotation annotation
com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference typeRef
java.util.Set elements
private void addEncodedValue (java.util.Map, java.util.Map, com.android.tools.smali.dexlib2.iface.reference.Reference, com.android.tools.smali.dexlib2.iface.value.EncodedValue)
com.android.tools.smali.dexlib2.iface.AnnotationElement element
com.android.tools.smali.dexlib2.immutable.reference.ImmutableTypeReference typeRef
com.android.tools.smali.dexlib2.iface.value.EncodedValue encodedValue
com.android.tools.smali.dexlib2.immutable.reference.ImmutableTypeReference typeRef
java.util.Map immutableReferencesBin
java.util.Map typesByName
com.android.tools.smali.dexlib2.iface.reference.Reference ref
com.android.tools.smali.dexlib2.iface.value.EncodedValue value
private void addReferenceAndEnclosingClass (java.util.Map, java.util.Map, com.android.tools.smali.dexlib2.iface.reference.Reference, com.android.tools.smali.dexlib2.iface.reference.Reference)
java.util.Map immutableReferencesBin
java.util.Map typesByName
com.android.tools.smali.dexlib2.iface.reference.Reference ref
com.android.tools.smali.dexlib2.iface.reference.Reference memberReference
private void addReference (com.android.tools.smali.dexlib2.iface.reference.Reference, com.android.tools.smali.dexlib2.iface.reference.Reference, java.util.Map)
String definingType2
com.android.tools.smali.dexlib2.iface.reference.Reference ref1
com.android.tools.smali.dexlib2.iface.reference.Reference ref2
java.util.Map immutableReferencesBin
com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference immutableRef1
com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference immutableRef2
public com.android.tools.apk.analyzer.dex.tree.DexElementNode getReferenceTreeFor (com.android.tools.smali.dexlib2.iface.reference.Reference)
com.android.tools.smali.dexlib2.iface.reference.Reference referenced
public com.android.tools.apk.analyzer.dex.tree.DexElementNode getReferenceTreeFor (com.android.tools.smali.dexlib2.iface.reference.Reference, boolean)
com.android.tools.smali.dexlib2.iface.reference.Reference referenced
boolean shallow
com.android.tools.apk.analyzer.dex.tree.DexElementNode rootNode
public void addReferencesForNode (com.android.tools.apk.analyzer.dex.tree.DexElementNode, boolean)
com.android.tools.apk.analyzer.dex.tree.DexElementNode parentNode
boolean hasCycle
com.android.tools.apk.analyzer.dex.tree.DexElementNode newNode
com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference ref
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
boolean shallow
com.android.tools.smali.dexlib2.iface.reference.Reference referenced
java.util.Collection references
public static boolean isAlreadyLoaded (com.android.tools.apk.analyzer.dex.tree.DexElementNode)
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
private static synthetic java.lang.String lambda$static$0 (com.android.tools.apk.analyzer.dex.tree.DexElementNode)
com.android.tools.apk.analyzer.dex.tree.DexElementNode o
static void <clinit> ()
}
com/android/tools/apk/analyzer/dex/DexViewFilters.class
DexViewFilters.java
package com.android.tools.apk.analyzer.dex
public com.android.tools.apk.analyzer.dex.DexViewFilters extends java.lang.Object implements java.util.function.Predicate {
private boolean showMethods
private boolean showFields
private boolean showReferencedNodes
private boolean showRemovedNodes
public void <init> ()
public void setShowMethods (boolean)
boolean showMethods
public void setShowFields (boolean)
boolean showFields
public void setShowReferencedNodes (boolean)
boolean showReferencedNodes
public void setShowRemovedNodes (boolean)
boolean showRemovedNodes
public boolean isShowMethods ()
public boolean isShowFields ()
public boolean isShowReferencedNodes ()
public boolean isShowRemovedNodes ()
public boolean test (com.android.tools.apk.analyzer.dex.tree.DexElementNode)
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
public volatile synthetic boolean test (java.lang.Object)
}
com/android/tools/apk/analyzer/dex/KeepRuleBuilder$KeepType.class
KeepRuleBuilder.java
package com.android.tools.apk.analyzer.dex
public final enum com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType extends java.lang.Enum {
public static final enum com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType KEEP
public static final enum com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType KEEPCLASSMEMBERS
public static final enum com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType KEEPNAMES
public static final enum com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType KEEPCLASSMEMBERNAMES
private static final synthetic com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType[] $VALUES
public static com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType[] values ()
public static com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType valueOf (java.lang.String)
String name
private void <init> (java.lang.String, int)
private static synthetic com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType[] $values ()
static void <clinit> ()
}
com/android/tools/apk/analyzer/dex/KeepRuleBuilder.class
KeepRuleBuilder.java
package com.android.tools.apk.analyzer.dex
public com.android.tools.apk.analyzer.dex.KeepRuleBuilder extends java.lang.Object {
public static final String KEEP_PREAMBLE
public static final String KEEP_RULE
public static final String KEEPCLASSMEMBERS_RULE
public static final String KEEPNAMES_RULE
public static final String KEEPCLASSMEMBERNAMES_RULE
public static String ANY_CLASS
public static String ANY_MEMBER
private String packageName
private String className
private String memberName
public void <init> ()
public com.android.tools.apk.analyzer.dex.KeepRuleBuilder setPackage (java.lang.String)
String aPackage
public com.android.tools.apk.analyzer.dex.KeepRuleBuilder setClass (java.lang.String)
String aClass
public com.android.tools.apk.analyzer.dex.KeepRuleBuilder setMember (java.lang.String)
String member
public java.lang.String build (com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType)
com.android.tools.apk.analyzer.dex.KeepRuleBuilder$KeepType keepType
StringBuilder sb
static void <clinit> ()
}
com/android/tools/apk/analyzer/dex/PackageTreeCreator.class
PackageTreeCreator.java
package com.android.tools.apk.analyzer.dex
public com.android.tools.apk.analyzer.dex.PackageTreeCreator extends java.lang.Object {
public static final String PARAMS_DELIMITER
private final com.android.tools.proguard.ProguardMap proguardMap
private final com.android.tools.proguard.ProguardUsagesMap usagesMap
public void <init> (com.android.tools.apk.analyzer.dex.ProguardMappings, boolean)
com.android.tools.apk.analyzer.dex.ProguardMappings proguardMappings
boolean deobfuscateNames
private static com.google.common.collect.Multimap getAllMethodReferencesByClassName (com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile)
com.android.tools.smali.dexlib2.iface.reference.MethodReference methodRef
int i
int m
com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile dexFile
com.google.common.collect.Multimap methodsByClass
private static com.google.common.collect.Multimap getAllFieldReferencesByClassName (com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile)
com.android.tools.smali.dexlib2.iface.reference.FieldReference fieldRef
int i
int m
com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile dexFile
com.google.common.collect.Multimap fieldsByClass
private static java.util.Map getAllTypeReferencesByClassName (com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile)
com.android.tools.smali.dexlib2.iface.reference.TypeReference typeRef
int i
int m
com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile dexFile
java.util.HashMap typesByName
public com.android.tools.apk.analyzer.dex.tree.DexPackageNode constructPackageTree (java.util.Map)
java.util.Map$Entry dexFile
java.util.Map dexFiles
com.android.tools.apk.analyzer.dex.tree.DexPackageNode root
public com.android.tools.apk.analyzer.dex.tree.DexPackageNode constructPackageTree (com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile)
com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile dexFile
com.android.tools.apk.analyzer.dex.tree.DexPackageNode root
public void constructPackageTree (com.android.tools.apk.analyzer.dex.tree.DexPackageNode, java.nio.file.Path, com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile)
com.android.tools.smali.dexlib2.dexbacked.DexBackedMethod method
com.android.tools.smali.dexlib2.dexbacked.DexBackedField field
com.android.tools.smali.dexlib2.dexbacked.DexBackedClassDef classDef
com.android.tools.smali.dexlib2.iface.reference.TypeReference typeRef
String className
com.android.tools.apk.analyzer.dex.tree.DexClassNode classNode
com.android.tools.smali.dexlib2.dexbacked.DexBackedClassDef classDef
com.android.tools.smali.dexlib2.iface.reference.TypeReference typeRef
String cleanClassName
com.android.tools.apk.analyzer.dex.tree.DexClassNode classNode
String className
com.android.tools.smali.dexlib2.iface.reference.TypeReference typeRef
String cleanClassName
com.android.tools.apk.analyzer.dex.tree.DexClassNode classNode
String className
com.android.tools.apk.analyzer.dex.tree.DexClassNode classNode
String className
com.android.tools.apk.analyzer.dex.tree.DexMethodNode methodNode
String removedMethodName
com.android.tools.apk.analyzer.dex.tree.DexClassNode classNode
String className
com.android.tools.apk.analyzer.dex.tree.DexFieldNode fieldNode
String removedFieldName
com.android.tools.apk.analyzer.dex.tree.DexClassNode classNode
String className
com.google.common.collect.Multimap removedMethodsByClass
com.google.common.collect.Multimap removedFieldsByClass
com.android.tools.apk.analyzer.dex.tree.DexPackageNode root
java.nio.file.Path dexFilePath
com.android.tools.smali.dexlib2.dexbacked.DexBackedDexFile dexFile
com.google.common.collect.Multimap methodRefsByClassName
com.google.common.collect.Multimap fieldRefsByClassName
java.util.Map typeRefsByName
private void addMethods (com.android.tools.apk.analyzer.dex.tree.DexClassNode, java.lang.Iterable, java.nio.file.Path)
String methodName
String returnType
String params
String methodSig
com.android.tools.apk.analyzer.dex.tree.DexMethodNode methodNode
com.android.tools.smali.dexlib2.iface.reference.MethodReference methodRef
com.android.tools.apk.analyzer.dex.tree.DexClassNode classNode
Iterable methodRefs
java.nio.file.Path dexFilePath
private void addFields (com.android.tools.apk.analyzer.dex.tree.DexClassNode, java.lang.Iterable, java.nio.file.Path)
String fieldName
String fieldType
String fieldSig
com.android.tools.apk.analyzer.dex.tree.DexFieldNode fieldNode
com.android.tools.smali.dexlib2.iface.reference.FieldReference fieldRef
com.android.tools.apk.analyzer.dex.tree.DexClassNode classNode
Iterable fieldRefs
java.nio.file.Path dexFilePath
public static java.lang.String decodeFieldName (com.android.tools.smali.dexlib2.iface.reference.FieldReference, com.android.tools.proguard.ProguardMap)
String className
com.android.tools.smali.dexlib2.iface.reference.FieldReference fieldRef
com.android.tools.proguard.ProguardMap proguardMap
String fieldName
public static java.lang.String decodeMethodParams (com.android.tools.smali.dexlib2.iface.reference.MethodReference, com.android.tools.proguard.ProguardMap)
com.android.tools.smali.dexlib2.iface.reference.MethodReference methodRef
com.android.tools.proguard.ProguardMap proguardMap
java.util.stream.Stream params
public static java.lang.String decodeMethodName (com.android.tools.smali.dexlib2.iface.reference.MethodReference, com.android.tools.proguard.ProguardMap)
String className
String methodName
String sigWithoutName
com.android.tools.proguard.ProguardMap$Frame frame
com.android.tools.smali.dexlib2.iface.reference.MethodReference methodRef
com.android.tools.proguard.ProguardMap proguardMap
public static java.lang.String decodeClassName (java.lang.String, com.android.tools.proguard.ProguardMap)
String className
com.android.tools.proguard.ProguardMap proguardMap
}
com/android/tools/apk/analyzer/dex/ProguardMappings.class
ProguardMappings.java
package com.android.tools.apk.analyzer.dex
public com.android.tools.apk.analyzer.dex.ProguardMappings extends java.lang.Object {
public final com.android.tools.proguard.ProguardMap map
public final com.android.tools.proguard.ProguardSeedsMap seeds
public final com.android.tools.proguard.ProguardUsagesMap usage
public void <init> (com.android.tools.proguard.ProguardMap, com.android.tools.proguard.ProguardSeedsMap, com.android.tools.proguard.ProguardUsagesMap)
com.android.tools.proguard.ProguardMap map
com.android.tools.proguard.ProguardSeedsMap seeds
com.android.tools.proguard.ProguardUsagesMap usage
}
com/android/tools/apk/analyzer/dex/tree/
com/android/tools/apk/analyzer/dex/tree/DexClassNode.class
DexClassNode.java
package com.android.tools.apk.analyzer.dex.tree
public com.android.tools.apk.analyzer.dex.tree.DexClassNode extends com.android.tools.apk.analyzer.dex.tree.DexElementNode {
private long size
public void <init> (java.lang.String, com.android.tools.smali.dexlib2.immutable.reference.ImmutableTypeReference)
String displayName
com.android.tools.smali.dexlib2.immutable.reference.ImmutableTypeReference reference
public boolean isSeed (com.android.tools.proguard.ProguardSeedsMap, com.android.tools.proguard.ProguardMap, boolean)
com.android.tools.smali.dexlib2.iface.reference.TypeReference reference
com.android.tools.proguard.ProguardSeedsMap seedsMap
com.android.tools.proguard.ProguardMap map
boolean checkChildren
public long getSize ()
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
int i
int n
long size
public void setSize (long)
long size
public com.android.tools.smali.dexlib2.iface.reference.TypeReference getReference ()
public com.android.tools.apk.analyzer.dex.tree.DexMethodNode getMethod (java.lang.String)
String qualifiedMethodName
public com.android.tools.apk.analyzer.dex.tree.DexFieldNode getField (java.lang.String)
String qualifiedFieldName
public void update ()
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
int i
int n
int methodDefinitions
int methodReferences
public volatile synthetic com.android.tools.smali.dexlib2.iface.reference.Reference getReference ()
}
com/android/tools/apk/analyzer/dex/tree/DexElementNode.class
DexElementNode.java
package com.android.tools.apk.analyzer.dex.tree
public abstract com.android.tools.apk.analyzer.dex.tree.DexElementNode extends javax.swing.tree.DefaultMutableTreeNode {
private final String name
private final com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference reference
private boolean defined
private boolean removed
private int methodReferencesCount
private int methodDefinitionsCount
void <init> (java.lang.String, boolean)
String name
boolean allowsChildren
void <init> (java.lang.String, boolean, com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference)
String name
boolean allowsChildren
com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference reference
public java.lang.String getName ()
public com.android.tools.smali.dexlib2.iface.reference.Reference getReference ()
public com.android.tools.apk.analyzer.dex.tree.DexElementNode getChildAt (int)
int i
public void sort (java.util.Comparator)
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
int i
java.util.List childrenList
java.util.Comparator comparator
public com.android.tools.apk.analyzer.dex.tree.DexElementNode getChildByType (java.lang.String, java.lang.Class)
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
int i
String name
Class type
public boolean isSeed (com.android.tools.proguard.ProguardSeedsMap, com.android.tools.proguard.ProguardMap, boolean)
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
int i
int n
com.android.tools.proguard.ProguardSeedsMap seedsMap
com.android.tools.proguard.ProguardMap map
boolean checkChildren
public com.android.tools.apk.analyzer.dex.tree.DexElementNode getParent ()
public void update ()
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
int i
int n
protected static java.lang.String combine (java.lang.String, java.lang.String)
String parentPackage
String childName
public boolean isDefined ()
public void setDefined (boolean)
boolean defined
public boolean isRemoved ()
public void setRemoved (boolean)
boolean removed
public int getMethodReferencesCount ()
protected void setMethodReferencesCount (int)
int methodReferencesCount
public int getMethodDefinitionsCount ()
protected void setMethodDefinitionsCount (int)
int methodDefinitionsCount
public abstract long getSize ()
public volatile synthetic javax.swing.tree.TreeNode getChildAt (int)
public volatile synthetic javax.swing.tree.TreeNode getParent ()
}
com/android/tools/apk/analyzer/dex/tree/DexElementNodeFactory.class
DexElementNodeFactory.java
package com.android.tools.apk.analyzer.dex.tree
public com.android.tools.apk.analyzer.dex.tree.DexElementNodeFactory extends java.lang.Object {
public void <init> ()
public static com.android.tools.apk.analyzer.dex.tree.DexElementNode from (com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference)
com.android.tools.smali.dexlib2.immutable.reference.ImmutableReference ref
}
com/android/tools/apk/analyzer/dex/tree/DexFieldNode.class
DexFieldNode.java
package com.android.tools.apk.analyzer.dex.tree
public com.android.tools.apk.analyzer.dex.tree.DexFieldNode extends com.android.tools.apk.analyzer.dex.tree.DexElementNode {
private long size
public void <init> (java.lang.String, com.android.tools.smali.dexlib2.immutable.reference.ImmutableFieldReference)
String displayName
com.android.tools.smali.dexlib2.immutable.reference.ImmutableFieldReference reference
public com.android.tools.smali.dexlib2.iface.reference.FieldReference getReference ()
public boolean isSeed (com.android.tools.proguard.ProguardSeedsMap, com.android.tools.proguard.ProguardMap, boolean)
String fieldName
String className
com.android.tools.smali.dexlib2.iface.reference.FieldReference reference
com.android.tools.proguard.ProguardSeedsMap seedsMap
com.android.tools.proguard.ProguardMap map
boolean checkChildren
public void update ()
public long getSize ()
public void setSize (long)
long size
public volatile synthetic com.android.tools.smali.dexlib2.iface.reference.Reference getReference ()
}
com/android/tools/apk/analyzer/dex/tree/DexMethodNode.class
DexMethodNode.java
package com.android.tools.apk.analyzer.dex.tree
public com.android.tools.apk.analyzer.dex.tree.DexMethodNode extends com.android.tools.apk.analyzer.dex.tree.DexElementNode {
private long size
public void <init> (java.lang.String, com.android.tools.smali.dexlib2.immutable.reference.ImmutableMethodReference)
String displayName
com.android.tools.smali.dexlib2.immutable.reference.ImmutableMethodReference reference
public com.android.tools.smali.dexlib2.iface.reference.MethodReference getReference ()
public boolean isSeed (com.android.tools.proguard.ProguardSeedsMap, com.android.tools.proguard.ProguardMap, boolean)
String className
String methodName
String params
com.android.tools.smali.dexlib2.iface.reference.MethodReference reference
com.android.tools.proguard.ProguardSeedsMap seedsMap
com.android.tools.proguard.ProguardMap map
boolean checkChildren
public int getMethodDefinitionsCount ()
public int getMethodReferencesCount ()
public void update ()
public void setSize (long)
long size
public long getSize ()
public volatile synthetic com.android.tools.smali.dexlib2.iface.reference.Reference getReference ()
}
com/android/tools/apk/analyzer/dex/tree/DexPackageNode.class
DexPackageNode.java
package com.android.tools.apk.analyzer.dex.tree
public com.android.tools.apk.analyzer.dex.tree.DexPackageNode extends com.android.tools.apk.analyzer.dex.tree.DexElementNode {
private final String packageName
public void <init> (java.lang.String, java.lang.String)
String name
String packageName
public long getSize ()
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
int i
int n
long size
public com.android.tools.apk.analyzer.dex.tree.DexClassNode getOrCreateClass (java.lang.String, java.lang.String, com.android.tools.smali.dexlib2.iface.reference.TypeReference)
com.android.tools.apk.analyzer.dex.tree.DexClassNode node
String segment
String nextSegment
com.android.tools.apk.analyzer.dex.tree.DexPackageNode packageNode
String parentPackage
String qualifiedClassName
com.android.tools.smali.dexlib2.iface.reference.TypeReference typeReference
int i
public com.android.tools.apk.analyzer.dex.tree.DexClassNode getClass (java.lang.String, java.lang.String)
String segment
String nextSegment
com.android.tools.apk.analyzer.dex.tree.DexPackageNode packageNode
String parentPackage
String qualifiedClassName
int i
public void update ()
com.android.tools.apk.analyzer.dex.tree.DexElementNode node
int i
int n
int methodDefinitions
int methodReferences
boolean isRemoved
boolean isDefined
public java.lang.String getPackageName ()
}
com/android/tools/apk/analyzer/internal/
com/android/tools/apk/analyzer/internal/AbstractArchive.class
AbstractArchive.java
package com.android.tools.apk.analyzer.internal
public abstract com.android.tools.apk.analyzer.internal.AbstractArchive extends java.lang.Object implements com.android.tools.apk.analyzer.Archive {
private final java.nio.file.Path path
public void <init> (java.nio.file.Path)
java.nio.file.Path path
public java.nio.file.Path getPath ()
public boolean isBinaryXml (java.nio.file.Path, byte[])
java.nio.file.Path p
byte[] content
public boolean isProtoXml (java.nio.file.Path, byte[])
java.nio.file.Path p
byte[] content
public boolean isBaselineProfile (java.nio.file.Path, byte[])
java.nio.file.Path p
byte[] content
public java.lang.String toString ()
}
com/android/tools/apk/analyzer/internal/ApkArchive.class
ApkArchive.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.ApkArchive extends com.android.tools.apk.analyzer.internal.ZipArchive {
public static final String APK_BASELINE_PROFILE_PATH
public static final String APK_BASELINE_PROFILE_METADATA_PATH
public void <init> (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path artifact
public boolean isBinaryXml (java.nio.file.Path, byte[])
java.nio.file.Path p
byte[] content
java.nio.file.Path name
java.nio.file.Path contents
boolean manifest
boolean insideResFolder
boolean insideResRaw
boolean xmlResource
short code
public boolean isBaselineProfile (java.nio.file.Path, byte[])
java.nio.file.Path p
byte[] content
String path
static void <clinit> ()
}
com/android/tools/apk/analyzer/internal/ApkDiffEntry.class
ApkDiffEntry.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.ApkDiffEntry extends java.lang.Object implements com.android.tools.apk.analyzer.internal.ApkEntry {
private final String name
private final com.android.tools.apk.analyzer.ArchiveNode oldFile
private final com.android.tools.apk.analyzer.ArchiveNode newFile
private final long oldSize
private final long newSize
static final synthetic boolean $assertionsDisabled
void <init> (java.lang.String, com.android.tools.apk.analyzer.ArchiveNode, com.android.tools.apk.analyzer.ArchiveNode, long, long)
String name
com.android.tools.apk.analyzer.ArchiveNode oldFile
com.android.tools.apk.analyzer.ArchiveNode newFile
long oldSize
long newSize
public java.lang.String getName ()
public java.nio.file.Path getPath ()
public long getSize ()
public long getOldSize ()
public long getNewSize ()
public static long getOldSize (com.android.tools.apk.analyzer.internal.ApkEntry)
com.android.tools.apk.analyzer.internal.ApkEntry apkEntry
public static long getNewSize (com.android.tools.apk.analyzer.internal.ApkEntry)
com.android.tools.apk.analyzer.internal.ApkEntry apkEntry
public java.lang.String toString ()
static void <clinit> ()
}
com/android/tools/apk/analyzer/internal/ApkDiffParser.class
ApkDiffParser.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.ApkDiffParser extends java.lang.Object {
public void <init> ()
public static javax.swing.tree.DefaultMutableTreeNode createTreeNode (com.android.tools.apk.analyzer.ArchiveContext, com.android.tools.apk.analyzer.ArchiveContext) throws java.io.IOException
com.android.tools.apk.analyzer.ArchiveContext oldFile
com.android.tools.apk.analyzer.ArchiveContext newFile
com.android.tools.apk.analyzer.ArchiveNode oldRoot
com.android.tools.apk.analyzer.ArchiveNode newRoot
private static javax.swing.tree.DefaultMutableTreeNode createTreeNode (com.android.tools.apk.analyzer.ArchiveNode, com.android.tools.apk.analyzer.ArchiveNode) throws java.io.IOException
com.android.tools.apk.analyzer.ArchiveNode archiveNode
com.android.tools.apk.analyzer.ArchiveNode newChild
javax.swing.tree.DefaultMutableTreeNode childNode
com.android.tools.apk.analyzer.internal.ApkDiffEntry entry
com.android.tools.apk.analyzer.ArchiveNode oldChild
javax.swing.tree.DefaultMutableTreeNode childNode
com.android.tools.apk.analyzer.internal.ApkDiffEntry entry
com.android.tools.apk.analyzer.ArchiveNode newChild
com.android.tools.apk.analyzer.ArchiveNode oldFile
com.android.tools.apk.analyzer.ArchiveNode newFile
javax.swing.tree.DefaultMutableTreeNode node
long oldSize
long newSize
java.util.HashSet childrenInOldFile
com.android.tools.apk.analyzer.ArchiveEntry data
String name
}
com/android/tools/apk/analyzer/internal/ApkEntry.class
ApkEntry.java
package com.android.tools.apk.analyzer.internal
public abstract com.android.tools.apk.analyzer.internal.ApkEntry extends java.lang.Object {
public static com.android.tools.apk.analyzer.internal.ApkEntry fromNode (java.lang.Object)
Object value
javax.swing.tree.DefaultMutableTreeNode node
Object userObject
public static void sort (javax.swing.tree.DefaultMutableTreeNode)
int i
javax.swing.tree.DefaultMutableTreeNode child
javax.swing.tree.DefaultMutableTreeNode node
java.util.List children
public abstract java.lang.String getName ()
public abstract java.nio.file.Path getPath ()
public abstract long getSize ()
private static synthetic int lambda$sort$0 (javax.swing.tree.DefaultMutableTreeNode, javax.swing.tree.DefaultMutableTreeNode)
javax.swing.tree.DefaultMutableTreeNode o1
javax.swing.tree.DefaultMutableTreeNode o2
com.android.tools.apk.analyzer.internal.ApkEntry entry1
com.android.tools.apk.analyzer.internal.ApkEntry entry2
}
com/android/tools/apk/analyzer/internal/ApkFileByFileDiffParser.class
ApkFileByFileDiffParser.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.ApkFileByFileDiffParser extends java.lang.Object {
public void <init> ()
public static javax.swing.tree.DefaultMutableTreeNode createTreeNode (com.android.tools.apk.analyzer.ArchiveContext, com.android.tools.apk.analyzer.ArchiveContext) throws java.io.IOException java.lang.InterruptedException
String path
com.google.archivepatcher.explainer.EntryExplanation explanation
com.android.tools.apk.analyzer.ArchiveContext oldFile
com.android.tools.apk.analyzer.ArchiveContext newFile
com.android.tools.apk.analyzer.ArchiveNode oldRoot
com.android.tools.apk.analyzer.ArchiveNode newRoot
com.google.archivepatcher.explainer.PatchExplainer explainer
java.util.Map pathsToDiffSize
java.util.List explanationList
static javax.swing.tree.DefaultMutableTreeNode createTreeNode (com.android.tools.apk.analyzer.ArchiveNode, com.android.tools.apk.analyzer.ArchiveNode, java.util.Map) throws java.io.IOException
com.android.tools.apk.analyzer.ArchiveNode archiveNode
com.android.tools.apk.analyzer.ArchiveNode newChild
javax.swing.tree.DefaultMutableTreeNode childNode
com.android.tools.apk.analyzer.internal.ApkDiffEntry entry
com.android.tools.apk.analyzer.ArchiveNode oldChild
javax.swing.tree.DefaultMutableTreeNode childNode
com.android.tools.apk.analyzer.internal.ApkDiffEntry entry
com.android.tools.apk.analyzer.ArchiveNode newChild
String relPath
String relPath
com.android.tools.apk.analyzer.ArchiveNode oldFile
com.android.tools.apk.analyzer.ArchiveNode newFile
java.util.Map pathsToDiffSize
javax.swing.tree.DefaultMutableTreeNode node
long oldSize
long newSize
long patchSize
java.util.HashSet childrenInOldFile
com.android.tools.apk.analyzer.ArchiveEntry data
String name
}
com/android/tools/apk/analyzer/internal/ApkFileByFileEntry.class
ApkFileByFileEntry.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.ApkFileByFileEntry extends com.android.tools.apk.analyzer.internal.ApkDiffEntry {
private final long diffSize
public void <init> (java.lang.String, com.android.tools.apk.analyzer.ArchiveNode, com.android.tools.apk.analyzer.ArchiveNode, long, long, long)
String name
com.android.tools.apk.analyzer.ArchiveNode oldFile
com.android.tools.apk.analyzer.ArchiveNode newFile
long oldSize
long newSize
long diffSize
public long getSize ()
}
com/android/tools/apk/analyzer/internal/AppBundleArchive$AnyPathEntry.class
AppBundleArchive.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.AppBundleArchive$AnyPathEntry extends com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry {
public static com.android.tools.apk.analyzer.internal.AppBundleArchive$AnyPathEntry instance
public void <init> ()
public boolean matches (java.nio.file.Path)
java.nio.file.Path name
static void <clinit> ()
}
com/android/tools/apk/analyzer/internal/AppBundleArchive$NamePathEntry.class
AppBundleArchive.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.AppBundleArchive$NamePathEntry extends com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry {
private final String name
public void <init> (java.lang.String)
String name
public boolean matches (java.nio.file.Path)
java.nio.file.Path name
}
com/android/tools/apk/analyzer/internal/AppBundleArchive$PathEntry.class
AppBundleArchive.java
package com.android.tools.apk.analyzer.internal
public abstract com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry extends java.lang.Object {
public static final com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry FD_RES
public static final com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry FD_RES_RAW
public static final com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry FN_ANDROID_MANIFEST_XML
public static final com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry FD_MANIFEST
public void <init> ()
public abstract boolean matches (java.nio.file.Path)
public static com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry any ()
public static com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry name (java.lang.String)
String name
static void <clinit> ()
}
com/android/tools/apk/analyzer/internal/AppBundleArchive.class
AppBundleArchive.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.AppBundleArchive extends com.android.tools.apk.analyzer.internal.AbstractArchive {
public static String BUNDLE_BASELINE_PROFILE_PATH
public static String BUNDLE_BASELINE_PROFILE_METADATA_PATH
private final java.nio.file.FileSystem zipFileSystem
private void <init> (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path path
public static com.android.tools.apk.analyzer.internal.AppBundleArchive fromBundleFile (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path artifact
public java.nio.file.Path getContentRoot ()
public void close () throws java.io.IOException
public boolean isProtoXml (java.nio.file.Path, byte[])
java.nio.file.Path p
byte[] content
java.nio.file.Path name
boolean manifest
boolean insideResFolder
boolean insideResRaw
boolean xmlResource
public boolean isBaselineProfile (java.nio.file.Path, byte[])
java.nio.file.Path p
byte[] content
String path
private static boolean isManifestFile (java.nio.file.Path)
java.nio.file.Path p
private static boolean isInsideResFolder (java.nio.file.Path)
java.nio.file.Path p
private static boolean isInsiderResRawFolder (java.nio.file.Path)
java.nio.file.Path p
private static transient boolean matchPathPrefix (java.nio.file.Path, com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry[])
com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry entry
java.nio.file.Path path
com.android.tools.apk.analyzer.internal.AppBundleArchive$PathEntry[] prefixEntries
int index
static void <clinit> ()
}
com/android/tools/apk/analyzer/internal/ArchiveContextImpl.class
ArchiveContextImpl.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.ArchiveContextImpl extends java.lang.Object implements com.android.tools.apk.analyzer.ArchiveContext {
private final com.android.tools.apk.analyzer.ArchiveManager archiveManager
private final com.android.tools.apk.analyzer.Archive archive
public void <init> (com.android.tools.apk.analyzer.ArchiveManager, com.android.tools.apk.analyzer.Archive)
com.android.tools.apk.analyzer.ArchiveManager archiveManager
com.android.tools.apk.analyzer.Archive archive
public com.android.tools.apk.analyzer.ArchiveManager getArchiveManager ()
public com.android.tools.apk.analyzer.Archive getArchive ()
public void close () throws java.io.IOException
}
com/android/tools/apk/analyzer/internal/ArchiveManagerImpl$1.class
ArchiveManagerImpl.java
package com.android.tools.apk.analyzer.internal
synthetic com.android.tools.apk.analyzer.internal.ArchiveManagerImpl$1 extends java.lang.Object {
}
com/android/tools/apk/analyzer/internal/ArchiveManagerImpl$ArchivePathComparator.class
ArchiveManagerImpl.java
package com.android.tools.apk.analyzer.internal
com.android.tools.apk.analyzer.internal.ArchiveManagerImpl$ArchivePathComparator extends java.lang.Object implements java.util.Comparator {
private void <init> ()
public int compare (com.android.tools.apk.analyzer.Archive, com.android.tools.apk.analyzer.Archive)
com.android.tools.apk.analyzer.Archive o1
com.android.tools.apk.analyzer.Archive o2
public volatile synthetic int compare (java.lang.Object, java.lang.Object)
synthetic void <init> (com.android.tools.apk.analyzer.internal.ArchiveManagerImpl$1)
com.android.tools.apk.analyzer.internal.ArchiveManagerImpl$1 x0
}
com/android/tools/apk/analyzer/internal/ArchiveManagerImpl.class
ArchiveManagerImpl.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.ArchiveManagerImpl extends java.lang.Object implements com.android.tools.apk.analyzer.ArchiveManager {
private static final java.util.List INNER_ZIP_EXTENSIONS
private final com.android.utils.ILogger logger
private final java.util.Map archives
private final java.util.Map tempDirectories
public void <init> (com.android.utils.ILogger)
com.android.utils.ILogger logger
public com.android.tools.apk.analyzer.ArchiveContext openArchive (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path path
com.android.tools.apk.analyzer.Archive archive
public com.android.tools.apk.analyzer.Archive openInnerArchive (com.android.tools.apk.analyzer.Archive, java.nio.file.Path) throws java.io.IOException
com.android.tools.apk.analyzer.Archive archive
java.nio.file.Path childPath
String childFileName
java.nio.file.Path tempFolder
java.nio.file.Path contentRoot
java.nio.file.Path tempFile
public void close () throws java.io.IOException
com.android.tools.apk.analyzer.Archive archive
java.nio.file.Path dir
private java.nio.file.Path createTempDirectory (com.android.tools.apk.analyzer.Archive) throws java.io.IOException
com.android.tools.apk.analyzer.Archive archive
private com.android.tools.apk.analyzer.Archive openArchiveWorker (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path path
private static com.android.tools.apk.analyzer.Archive openInnerArchiveWorker (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path archive
private static void validateZipFile (java.nio.file.Path) throws java.io.IOException
java.util.zip.ZipInputStream zis
java.io.FileInputStream fis
java.nio.file.Path archive
private static boolean hasFileExtension (java.nio.file.Path, java.lang.String)
java.nio.file.Path path
String extension
private synthetic java.nio.file.Path lambda$createTempDirectory$1 (com.android.tools.apk.analyzer.Archive) throws java.io.IOException
com.android.tools.apk.analyzer.Archive archive1
java.nio.file.Path dir
private synthetic com.android.tools.apk.analyzer.Archive lambda$openInnerArchive$0 (java.nio.file.Path, java.nio.file.Path) throws java.io.IOException
Throwable e
java.nio.file.Path childPath
java.nio.file.Path file
static void <clinit> ()
}
com/android/tools/apk/analyzer/internal/ArchiveTreeNode.class
ArchiveTreeNode.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.ArchiveTreeNode extends javax.swing.tree.DefaultMutableTreeNode implements com.android.tools.apk.analyzer.ArchiveNode {
public void <init> (com.android.tools.apk.analyzer.ArchiveEntry)
com.android.tools.apk.analyzer.ArchiveEntry data
public java.util.List getChildren ()
public void add (javax.swing.tree.MutableTreeNode)
javax.swing.tree.MutableTreeNode newChild
public com.android.tools.apk.analyzer.internal.ArchiveTreeNode getParent ()
public com.android.tools.apk.analyzer.ArchiveEntry getData ()
public volatile synthetic javax.swing.tree.TreeNode getParent ()
public volatile synthetic com.android.tools.apk.analyzer.ArchiveNode getParent ()
}
com/android/tools/apk/analyzer/internal/GzipSizeCalculator$MaxGzipOutputStream.class
GzipSizeCalculator.java
package com.android.tools.apk.analyzer.internal
final com.android.tools.apk.analyzer.internal.GzipSizeCalculator$MaxGzipOutputStream extends java.util.zip.GZIPOutputStream {
public void <init> (java.io.OutputStream) throws java.io.IOException
java.io.OutputStream out
}
com/android/tools/apk/analyzer/internal/GzipSizeCalculator$MaxZipOutputStream.class
GzipSizeCalculator.java
package com.android.tools.apk.analyzer.internal
final com.android.tools.apk.analyzer.internal.GzipSizeCalculator$MaxZipOutputStream extends java.util.zip.ZipOutputStream {
public void <init> (java.io.OutputStream) throws java.io.IOException
java.io.OutputStream out
}
com/android/tools/apk/analyzer/internal/GzipSizeCalculator.class
GzipSizeCalculator.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.GzipSizeCalculator extends java.lang.Object implements com.android.tools.apk.analyzer.ApkSizeCalculator {
public static final String VIRTUAL_ENTRY_NAME
public void <init> ()
private static void verify (java.nio.file.Path)
java.util.zip.ZipFile zf
java.io.IOException e
java.nio.file.Path apk
public long getFullApkDownloadSize (java.nio.file.Path)
java.util.zip.GZIPOutputStream zos
java.io.IOException e
java.nio.file.Path apk
com.google.common.io.CountingOutputStream out
public long getFullApkRawSize (java.nio.file.Path)
java.io.IOException e
java.nio.file.Path apk
public java.util.Map getDownloadSizePerFile (java.nio.file.Path)
java.nio.file.Path rezippedApk
java.util.Map compressedSizePerFile
String msg
java.io.IOException e
java.nio.file.Path apk
public java.util.Map getRawSizePerFile (java.nio.file.Path)
java.nio.file.Path apk
private static java.util.Map getCompressedSizePerFile (java.nio.file.Path)
java.util.zip.ZipEntry zipEntry
java.util.Enumeration entries
java.util.zip.ZipFile zf
java.nio.file.Path apk
com.google.common.collect.ImmutableMap$Builder sizes
private static void reCompressWithZip (java.nio.file.Path, java.nio.file.Path) throws java.io.IOException
java.util.zip.ZipEntry compressedZe
java.util.zip.ZipEntry ze
java.util.zip.ZipOutputStream zos
java.util.zip.ZipInputStream zis
java.nio.file.Path from
java.nio.file.Path to
public static boolean isVirtualEntry (java.util.zip.ZipEntry)
java.util.zip.ZipEntry e
}
com/android/tools/apk/analyzer/internal/InstantAppBundleArchive$CopyPathFileVisitor.class
InstantAppBundleArchive.java
package com.android.tools.apk.analyzer.internal
com.android.tools.apk.analyzer.internal.InstantAppBundleArchive$CopyPathFileVisitor extends java.lang.Object implements java.nio.file.FileVisitor {
private final java.nio.file.Path source
private final java.nio.file.Path destination
public void <init> (java.nio.file.FileSystem, java.nio.file.Path)
java.nio.file.FileSystem source
java.nio.file.Path destination
public java.nio.file.FileVisitResult preVisitDirectory (java.nio.file.Path, java.nio.file.attribute.BasicFileAttributes) throws java.io.IOException
java.nio.file.Path dir
java.nio.file.attribute.BasicFileAttributes attrs
java.nio.file.Path resolved
public java.nio.file.FileVisitResult visitFile (java.nio.file.Path, java.nio.file.attribute.BasicFileAttributes) throws java.io.IOException
java.nio.file.Path file
java.nio.file.attribute.BasicFileAttributes attrs
public java.nio.file.FileVisitResult visitFileFailed (java.nio.file.Path, java.io.IOException)
java.nio.file.Path file
java.io.IOException exc
public java.nio.file.FileVisitResult postVisitDirectory (java.nio.file.Path, java.io.IOException)
java.nio.file.Path dir
java.io.IOException exc
public volatile synthetic java.nio.file.FileVisitResult postVisitDirectory (java.lang.Object, java.io.IOException) throws java.io.IOException
public volatile synthetic java.nio.file.FileVisitResult visitFileFailed (java.lang.Object, java.io.IOException) throws java.io.IOException
public volatile synthetic java.nio.file.FileVisitResult visitFile (java.lang.Object, java.nio.file.attribute.BasicFileAttributes) throws java.io.IOException
public volatile synthetic java.nio.file.FileVisitResult preVisitDirectory (java.lang.Object, java.nio.file.attribute.BasicFileAttributes) throws java.io.IOException
}
com/android/tools/apk/analyzer/internal/InstantAppBundleArchive.class
InstantAppBundleArchive.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.InstantAppBundleArchive extends com.android.tools.apk.analyzer.internal.AbstractArchive {
private final java.nio.file.Path extractedFilesPath
private void <init> (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path path
private void extractArchiveContents (java.nio.file.Path) throws java.io.IOException
java.nio.file.FileSystem fileSystem
java.nio.file.Path artifact
public static com.android.tools.apk.analyzer.internal.InstantAppBundleArchive fromZippedBundle (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path path
public java.nio.file.Path getContentRoot ()
public void close () throws java.io.IOException
}
com/android/tools/apk/analyzer/internal/MapUtils$ThrowableFunction.class
MapUtils.java
package com.android.tools.apk.analyzer.internal
public abstract com.android.tools.apk.analyzer.internal.MapUtils$ThrowableFunction extends java.lang.Object {
public abstract java.lang.Object apply (java.lang.Object) throws java.lang.Throwable
}
com/android/tools/apk/analyzer/internal/MapUtils.class
MapUtils.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.MapUtils extends java.lang.Object {
public void <init> ()
public static java.lang.Object computeIfAbsent (java.util.Map, java.lang.Object, com.android.tools.apk.analyzer.internal.MapUtils$ThrowableFunction) throws java.lang.Throwable
java.util.Map map
Object key
com.android.tools.apk.analyzer.internal.MapUtils$ThrowableFunction supplier
Object value
}
com/android/tools/apk/analyzer/internal/ProguardMappingFiles.class
ProguardMappingFiles.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.ProguardMappingFiles extends java.lang.Object {
private static final String EXT
private static final String MAPPING_BASE
private static final String USAGE_BASE
private static final String SEEDS_BASE
private static final String MAPPING_FILENAME
private static final String USAGE_FILENAME
private static final String SEEDS_FILENAME
public final java.nio.file.Path mappingFile
public final java.nio.file.Path seedsFile
public final java.nio.file.Path usageFile
public void <init> (java.nio.file.Path, java.nio.file.Path, java.nio.file.Path)
java.nio.file.Path mappingFile
java.nio.file.Path seedsFile
java.nio.file.Path usageFile
public static com.android.tools.apk.analyzer.internal.ProguardMappingFiles from (java.nio.file.Path[]) throws java.io.IOException
java.nio.file.Path path
java.nio.file.DirectoryStream stream
java.nio.file.Path file
java.nio.file.Path file
java.nio.file.Path[] paths
java.nio.file.Path[] filesToCheck
java.nio.file.Path mappingFile
java.nio.file.Path seedsFile
java.nio.file.Path usageFile
}
com/android/tools/apk/analyzer/internal/SigUtils$1.class
SigUtils.java
package com.android.tools.apk.analyzer.internal
com.android.tools.apk.analyzer.internal.SigUtils$1 extends com.android.tools.apk.analyzer.internal.SigUtils$SigReader {
final synthetic String val$methodName
final synthetic String val$className
void <init> (java.lang.String, java.lang.String, java.lang.String)
String s
java.lang.String getMethodName ()
java.lang.String getClassName ()
}
com/android/tools/apk/analyzer/internal/SigUtils$SigReader.class
SigUtils.java
package com.android.tools.apk.analyzer.internal
com.android.tools.apk.analyzer.internal.SigUtils$SigReader extends java.lang.Object {
final String buffer
int pos
void <init> (java.lang.String)
String s
int get ()
int peek ()
boolean eof ()
java.lang.String getSignature ()
int start
StringBuilder result
String separator
java.lang.String getMethodName ()
java.lang.String getClassName ()
}
com/android/tools/apk/analyzer/internal/SigUtils.class
SigUtils.java
package com.android.tools.apk.analyzer.internal
public abstract com.android.tools.apk.analyzer.internal.SigUtils extends java.lang.Object {
public void <init> ()
public static java.lang.String getSimpleName (java.lang.String)
String fqn
public static java.lang.String methodName (java.lang.String, java.lang.String, java.lang.String)
Exception ignored
String className
String methodName
String signature
public static java.lang.String signatureToName (java.lang.String)
String s
public static java.lang.String typeToSignature (java.lang.String)
String fqcn
StringBuilder sb
}
com/android/tools/apk/analyzer/internal/ZipArchive.class
ZipArchive.java
package com.android.tools.apk.analyzer.internal
public com.android.tools.apk.analyzer.internal.ZipArchive extends com.android.tools.apk.analyzer.internal.AbstractArchive {
private final java.nio.file.FileSystem zipFileSystem
public void <init> (java.nio.file.Path) throws java.io.IOException
java.nio.file.Path path
public java.nio.file.Path getContentRoot ()
public void close () throws java.io.IOException
}
com/android/tools/apk/analyzer/internal/rewriters/
com/android/tools/apk/analyzer/internal/rewriters/FieldReferenceWithNameRewriter$RewrittenFieldReferenceWithName.class
FieldReferenceWithNameRewriter.java
package com.android.tools.apk.analyzer.internal.rewriters
public com.android.tools.apk.analyzer.internal.rewriters.FieldReferenceWithNameRewriter$RewrittenFieldReferenceWithName extends com.android.tools.smali.dexlib2.rewriter.FieldReferenceRewriter$RewrittenFieldReference {
final synthetic com.android.tools.apk.analyzer.internal.rewriters.FieldReferenceWithNameRewriter this$0
public void <init> (com.android.tools.apk.analyzer.internal.rewriters.FieldReferenceWithNameRewriter, com.android.tools.smali.dexlib2.iface.reference.FieldReference)
com.android.tools.apk.analyzer.internal.rewriters.FieldReferenceWithNameRewriter this$0
com.android.tools.smali.dexlib2.iface.reference.FieldReference fieldReference
public java.lang.String getName ()
}
com/android/tools/apk/analyzer/internal/rewriters/FieldReferenceWithNameRewriter.class
FieldReferenceWithNameRewriter.java
package com.android.tools.apk.analyzer.internal.rewriters
public abstract com.android.tools.apk.analyzer.internal.rewriters.FieldReferenceWithNameRewriter extends com.android.tools.smali.dexlib2.rewriter.FieldReferenceRewriter {
public void <init> (com.android.tools.smali.dexlib2.rewriter.Rewriters)
com.android.tools.smali.dexlib2.rewriter.Rewriters rewriters
public abstract java.lang.String rewriteName (com.android.tools.smali.dexlib2.iface.reference.FieldReference)
public com.android.tools.smali.dexlib2.iface.reference.FieldReference rewrite (com.android.tools.smali.dexlib2.iface.reference.FieldReference)
com.android.tools.smali.dexlib2.iface.reference.FieldReference fieldReference
public volatile synthetic java.lang.Object rewrite (java.lang.Object)
}
com/android/tools/apk/analyzer/internal/rewriters/MethodReferenceWithNameRewriter$RewrittenMethodReferenceWithName.class
MethodReferenceWithNameRewriter.java
package com.android.tools.apk.analyzer.internal.rewriters
public com.android.tools.apk.analyzer.internal.rewriters.MethodReferenceWithNameRewriter$RewrittenMethodReferenceWithName extends com.android.tools.smali.dexlib2.rewriter.MethodReferenceRewriter$RewrittenMethodReference {
final synthetic com.android.tools.apk.analyzer.internal.rewriters.MethodReferenceWithNameRewriter this$0
public void <init> (com.android.tools.apk.analyzer.internal.rewriters.MethodReferenceWithNameRewriter, com.android.tools.smali.dexlib2.iface.reference.MethodReference)
com.android.tools.apk.analyzer.internal.rewriters.MethodReferenceWithNameRewriter this$0
com.android.tools.smali.dexlib2.iface.reference.MethodReference methodReference
public java.lang.String getName ()
}
com/android/tools/apk/analyzer/internal/rewriters/MethodReferenceWithNameRewriter.class
MethodReferenceWithNameRewriter.java
package com.android.tools.apk.analyzer.internal.rewriters
public abstract com.android.tools.apk.analyzer.internal.rewriters.MethodReferenceWithNameRewriter extends com.android.tools.smali.dexlib2.rewriter.MethodReferenceRewriter {
public void <init> (com.android.tools.smali.dexlib2.rewriter.Rewriters)
com.android.tools.smali.dexlib2.rewriter.Rewriters rewriters
public com.android.tools.smali.dexlib2.iface.reference.MethodReference rewrite (com.android.tools.smali.dexlib2.iface.reference.MethodReference)
com.android.tools.smali.dexlib2.iface.reference.MethodReference methodReference
public abstract java.lang.String rewriteName (com.android.tools.smali.dexlib2.iface.reference.MethodReference)
public volatile synthetic java.lang.Object rewrite (java.lang.Object)
}