Class DefaultSCanDroidOptions

java.lang.Object
org.scandroid.synthmethod.DefaultSCanDroidOptions
All Implemented Interfaces:
ISCanDroidOptions

public abstract class DefaultSCanDroidOptions extends Object implements ISCanDroidOptions
  • Constructor Details

    • DefaultSCanDroidOptions

      public DefaultSCanDroidOptions()
  • Method Details

    • pdfCG

      public boolean pdfCG()
      Specified by:
      pdfCG in interface ISCanDroidOptions
      Returns:
      whether to create a full call graph pdf
    • pdfPartialCG

      public boolean pdfPartialCG()
      Specified by:
      pdfPartialCG in interface ISCanDroidOptions
      Returns:
      whether to create an application-only call graph pdf
    • pdfOneLevelCG

      public boolean pdfOneLevelCG()
      Specified by:
      pdfOneLevelCG in interface ISCanDroidOptions
      Returns:
      whether to create a call graph of application + 1 level of system calls
    • systemToApkCG

      public boolean systemToApkCG()
      Specified by:
      systemToApkCG in interface ISCanDroidOptions
      Returns:
      whether to create a system + 1 level of application call graph
    • stdoutCG

      public boolean stdoutCG()
      Specified by:
      stdoutCG in interface ISCanDroidOptions
      Returns:
      whether to print a full call graph to stdout
    • includeLibrary

      public boolean includeLibrary()
      Specified by:
      includeLibrary in interface ISCanDroidOptions
      Returns:
      whether to include the Android library in flow analysis
    • separateEntries

      public boolean separateEntries()
      Specified by:
      separateEntries in interface ISCanDroidOptions
      Returns:
      whether to analyze each entry point separately
    • ifdsExplorer

      public boolean ifdsExplorer()
      Specified by:
      ifdsExplorer in interface ISCanDroidOptions
      Returns:
      whether to bring up a GUI to analyze domain elements for flow analysis
    • addMainEntrypoints

      public boolean addMainEntrypoints()
      Specified by:
      addMainEntrypoints in interface ISCanDroidOptions
      Returns:
      whether to look for main methods and add them as entry points
    • useThreadRunMain

      public boolean useThreadRunMain()
      Specified by:
      useThreadRunMain in interface ISCanDroidOptions
      Returns:
      whether to use ServerThread.run as the entry point for analysis
    • stringPrefixAnalysis

      public boolean stringPrefixAnalysis()
      Specified by:
      stringPrefixAnalysis in interface ISCanDroidOptions
      Returns:
      whether to run string prefix analysis
    • testCGBuilder

      public boolean testCGBuilder()
      Specified by:
      testCGBuilder in interface ISCanDroidOptions
      Returns:
      whether to stop after generating the call graph
    • useDefaultPolicy

      public boolean useDefaultPolicy()
      Specified by:
      useDefaultPolicy in interface ISCanDroidOptions
      Returns:
      whether to check conformance to built-in policy
    • getClasspath

      public abstract URI getClasspath()
      Specified by:
      getClasspath in interface ISCanDroidOptions
      Returns:
      the URI pointing to the jar or apk to analyze
    • getFilename

      public String getFilename()
      Specified by:
      getFilename in interface ISCanDroidOptions
      Returns:
      the filename portion of the classpath to analyze
    • getAndroidLibrary

      public URI getAndroidLibrary()
      Specified by:
      getAndroidLibrary in interface ISCanDroidOptions
      Returns:
      a URI to the Android library jar
    • getReflectionOptions

      public AnalysisOptions.ReflectionOptions getReflectionOptions()
      Specified by:
      getReflectionOptions in interface ISCanDroidOptions
      Returns:
      the ReflectionOptions for this run
    • getSummariesURI

      public URI getSummariesURI()
      Specified by:
      getSummariesURI in interface ISCanDroidOptions
      Returns:
      a URI to the XML method summaries file
    • classHierarchyWarnings

      public boolean classHierarchyWarnings()
      Specified by:
      classHierarchyWarnings in interface ISCanDroidOptions
      Returns:
      whether to log class hierarchy warnings
    • cgBuilderWarnings

      public boolean cgBuilderWarnings()
      Specified by:
      cgBuilderWarnings in interface ISCanDroidOptions
      Returns:
      whether to log call graph builder warnings
    • dumpString

      public static String dumpString(ISCanDroidOptions options)