sdk.git

    This is the git repository for most java based tools.

    Here's a descriptions of each item under the sdk folder.

    • changes.txt
      • change log for the SDK tools.
    Java Applications
    • ddms/
      • DDMS application.
      • Split in 3 jar files
        • ddms/libs/ddmlib generates ddmlib.jar
          • This is a library handling communicating with devices through adb
          • This does not contain any UI.
          • Used by several tools outside of DDMS such as HierarchyViewer
        • ddms/libs/ddmuilib generates ddmuilib.jar
          • SWT based UI for ddmlib.
          • Not a fully application only a collection of panes and means to make them communicate with each other.
        • ddms/app generates ddms.jar
          • glue for ddmlib and ddmuilib making a standalone application
          • shell scripts to launch the app.
    • sdkmanager/
      • android application. Both a command line tool and a UI based tool.
      • Split in 3 jar files, like DDMS
        • sdkmanager/libs/sdklib generates sdklib.jar
          • this is the library 
    • traceview/
      • traceview standalone application.
      • SWT based, but not integrated with Eclipse (yet?)
    • hierarchyviewer2/
      • standalone HierarchyViewer
        • hierarchyview2/libs/hierarchyviewerlib generate hierarchyviewerlib.jar
          • This library contains the logic and SWT-based code for hierarchyview but does not make a full app.
        • hierarchyviewer2/app generates hierarchyviewer2.jar
          • app wrapper around hierarchyviewerlib.jar making a standalone application.
          • schell scripts to launch the app.
    • hierarchyviewer/
      • old obsolete version of hierarchyviewer.
    • draw9patch/
      • Standalone tools to edit 9 patch files.
      • Swing based, not integrated with Eclipse (yet?)
    • layoutopt
    • monkeyrunner

    Eclipse plug-ins
    • eclipse/
      • Main folder for all Eclipse related projects
      • changes.txt
        • Change log for Eclipse plug-ins
      • dictionary.txt
        • custom user spelling directory to be used when developing for Android tools in Eclipse
      • plugins/
        • folder for all Eclipse plug-ins. Each name is the plug-in id.
      • features/
        • folder for all Eclipse features. Each name is the feature id.
      • sites/
        • Eclipse update site.
        • external/ is the public one.
        • internal/ contains the same as the internal one, plus a test plug-in and one for platform development.
      • scripts/
        • shell scripts to set up eclipse development. See this page.

    Java Libraries, used by Java applications and Eclipse plug-ins
    • androidprefs/
      • Small java project generating androidprefs.jar
      • Gives access to the android preferences folder.
      • Used in most tools, packaged in $SDK/tools/libs/
    • anttasks/
      • Custom tasks used in the Ant build system
      • Generates anttasks.jar, packaged in $SDK/tools/libs/
    • apkbuilder/
      • Previous location for apkbuilder.jar
      • Now integrated into sdklib.jar
      • Still contains the shell script to run the command line version of apkbuilder
      • Deprecated.
    • archquery/
      • Small java project generating archquery.jar
      • Allows querying the VM for properties from the command line.
    • ide_common/
      • Library for classes useful when creating IDE based tools.
      • Mostly about loading data from the SDK
      • Useful for custom editors.
    • layoutlib_api/
      • API library for the layoutlib.
      • layoutlib compiles against it but does not include.
      • Any tool loading layoutlib should include it.
    • ninepatch/
      • Library to load, manage nine patch file in Java
      • Needed to load layoutlib.
    • sdkstats/

    Misc
    • build
      • tools.atree controlling what gets packaged in $SDK/tools
      • misc build scripts.
    • docs
      • misc docs
    • dumpeventlog
    • emulator
      • emulator specific tools, skins, and system image daemon.
    • eventanalyzer
    • files
      • various files used by the SDK, including Ant build rules
    • screenshot
    • sdklauncher
    • templates
    • testapps