1*1789df15SXin LiChange log for Android SDK Tools. 2*1789df15SXin Li 3*1789df15SXin LiRevision 22.2.1: 4*1789df15SXin Li- Emergency fix to new project templates. 5*1789df15SXin Li 6*1789df15SXin LiRevision 22.2.0: 7*1789df15SXin Li 8*1789df15SXin LiRevision 22: 9*1789df15SXin Li 10*1789df15SXin LiRevision 20: 11*1789df15SXin Li- Ant build system: 12*1789df15SXin Li- Ant build system: 13*1789df15SXin Li * the location of the SDK can now be set through the ANDROID_HOME 14*1789df15SXin Li environment variable (requires updating the project's build.xml file) 15*1789df15SXin Li * Fixed issues with compilation, deployment of test projects and running tests. 16*1789df15SXin Li Both separate test projects and self-contained app+test projects now work. 17*1789df15SXin Li * Aidl files from library projects are now in the import list. 18*1789df15SXin Li 19*1789df15SXin LiRevision 19: 20*1789df15SXin Li- Fix GPU rendering 21*1789df15SXin Li 22*1789df15SXin LiRevision 18: 23*1789df15SXin Li* Fix Ant issues where some jar libraries in libs/ are not picked in some 24*1789df15SXin Li cases 25*1789df15SXin Li* New version of SdkController 26*1789df15SXin Li 27*1789df15SXin LiRevision 17: 28*1789df15SXin Li* Bug fixes. 29*1789df15SXin Li* ProGuard updated to version 4.7. In addition to many new features, 30*1789df15SXin Li this will fix the "Conversion to Dalvik format failed with error 1" 31*1789df15SXin Li error some users have experienced. 32*1789df15SXin Li* The default proguard.cfg file has been updated with better 33*1789df15SXin Li flags. 34*1789df15SXin Li* Lint now checks Java code, and checks which previously performed 35*1789df15SXin Li pattern based searches in the Java code (such as the unused resource 36*1789df15SXin Li check) have been rewritten to use the more accurate Java parse 37*1789df15SXin Li trees. 38*1789df15SXin Li* Lint supports library projects, so for example the unused resource 39*1789df15SXin Li check will properly handle resources declared in a library project 40*1789df15SXin Li and referenced in a downstream project. 41*1789df15SXin Li* Lint warnings can be suppressed in Java code with the new 42*1789df15SXin Li @SuppressLint annotation, and in XML files with the new tools: 43*1789df15SXin Li namespace and ignore-attribute. 44*1789df15SXin Li* New lint checks: 45*1789df15SXin Li * Find Android API calls that require a version of Android higher 46*1789df15SXin Li than the minimum supported version. You can use the new @TargetApi 47*1789df15SXin Li annotation to specify local overrides for conditionally loaded 48*1789df15SXin Li code. 49*1789df15SXin Li * Find object allocations within onDraw, onMeasure and onLayout 50*1789df15SXin Li calls 51*1789df15SXin Li * Find usages of HashMap<Integer,X> which can be replaced by the 52*1789df15SXin Li more efficient SparseArray, SparseIntArray or SparseBooleanArray 53*1789df15SXin Li * Find typos in XML namespace declarations, as well as unused custom 54*1789df15SXin Li namespace declarations and usages of custom namespaces in library 55*1789df15SXin Li projects which do not yet work 56*1789df15SXin Li * Find manifest files which declare more than one <uses-sdk> 57*1789df15SXin Li elements, or which fail to declare minSdkVersion or 58*1789df15SXin Li targetSdkVersion 59*1789df15SXin Li * Check dialog button order such that OK/Cancel are in the right 60*1789df15SXin Li order (depending on the target version of Android), that they are 61*1789df15SXin Li using the standard case ("OK", not "Ok" or "ok" etc), and that 62*1789df15SXin Li there aren't any Back buttons. 63*1789df15SXin Li * Check menus to ensure that they are using "ifRoom" instead of 64*1789df15SXin Li "always" for the showAsAction attribute (unless it's used 65*1789df15SXin Li sparingly) 66*1789df15SXin Li * Find hardcoded android:debuggable attributes on <application> 67*1789df15SXin Li elements. This can lead to accidentally leaving debug information 68*1789df15SXin Li in published applications. 69*1789df15SXin Li * Find errors in format strings. This includes inconsistencies 70*1789df15SXin Li between translated versions, as well as incompatible types 71*1789df15SXin Li declared in XML and supplied in the String.format call in Java. 72*1789df15SXin Li * Find incorrect casts in Java code where the cast is incompatible 73*1789df15SXin Li with the view type declared in XML layouts. 74*1789df15SXin Li * Find hardcoded references to "/sdcard" in Java code; these should 75*1789df15SXin Li be using Environment.getExternalStorageDirectory().getPath() 76*1789df15SXin Li instead 77*1789df15SXin Li * Find "import android.R" statements in Java code, which can lead to 78*1789df15SXin Li confusing compilation error messages 79*1789df15SXin Li * Find Java code which creates world-writeable files (which can lead 80*1789df15SXin Li to security problems) 81*1789df15SXin Li * Find references to private resources (which can lead to runtime 82*1789df15SXin Li errors on devices that do not provide the resource, since private 83*1789df15SXin Li resources may disappear any time, and may not be present on all 84*1789df15SXin Li platforms.) 85*1789df15SXin Li * Find invalid @id references (where for example a RelativeLayout 86*1789df15SXin Li references an id that does not exist anywhere). If no match is 87*1789df15SXin Li found, it looks for spelling mistakes and suggests other similar 88*1789df15SXin Li ids in the error message. 89*1789df15SXin Li * Finds method calls to java.lang.Math where a float variable is 90*1789df15SXin Li cast to a double and/or the return value is cast to a float, and 91*1789df15SXin Li suggests replacing it with the equivalent android.util.FloatMath 92*1789df15SXin Li method. 93*1789df15SXin Li * Finds calls to a getter on the same class where a field could be 94*1789df15SXin Li accessed instead. 95*1789df15SXin Li * Find XML files using a different encoding format than UTF-8, since 96*1789df15SXin Li this can lead to subtle bugs (and lint was fixed to properly use 97*1789df15SXin Li the specified encoding) 98*1789df15SXin Li * Find XML resource files that contain text which should not be 99*1789df15SXin Li there (such as in layouts). This can identify accidentally 100*1789df15SXin Li malformed documents which happen to be valid XML, such as a 101*1789df15SXin Li missing "<" tag opening character. 102*1789df15SXin Li * Find style references which lead to cycles, such as extending 103*1789df15SXin Li self. 104*1789df15SXin Li 105*1789df15SXin LiRevision 16: 106*1789df15SXin Li* New "lint" tool which scans Android project trees for potential 107*1789df15SXin Li problems such as missing translations, duplicate ids between layouts 108*1789df15SXin Li that include each other, using px instead of dp units, hardcoded 109*1789df15SXin Li strings, missing contentDescriptions, obsolete Proguard 110*1789df15SXin Li configuration files, etc. For a full list of available issues run 111*1789df15SXin Li "lint --show" (and see eclipse/changes.txt for further details). 112*1789df15SXin Li* layoutopt was removed; its functionality is replaced by the new lint 113*1789df15SXin Li tool 114*1789df15SXin Li 115*1789df15SXin LiRevision 14: 116*1789df15SXin Li 117*1789df15SXin Li- Build performance improvements: 118*1789df15SXin Li * resource compilation and packaging now properly use dependency to only 119*1789df15SXin Li be executed if a resource changed. 120*1789df15SXin Li * Optimized resource compilation for projects with libraries. This should 121*1789df15SXin Li speed up this phase significantly for large projects with libraries. 122*1789df15SXin Li * PNG files that are optimized during resource packaging are now cached 123*1789df15SXin Li and only re-optimized if they changed instead of doing at every build. 124*1789df15SXin Li- New library project mechanism: 125*1789df15SXin Li * 126*1789df15SXin Li 127*1789df15SXin LiRevision 13: 128*1789df15SXin Li 129*1789df15SXin LiRevision 12: (07/2011): 130*1789df15SXin Li- The AVD manager and emulator can now use system images compiled for ARM v7 and 131*1789df15SXin Li x86 CPUs. 132*1789df15SXin Li 133*1789df15SXin LiRevision 11 (05/2011): 134*1789df15SXin Li- See eclipse/changes.txt for ADT related changes. 135*1789df15SXin Li 136*1789df15SXin LiRevision 10 (02/2011): 137*1789df15SXin Li- The tools now automatically generate Java Programming Language 138*1789df15SXin Li source files (in the gen directory) and bytecode (in the res/raw 139*1789df15SXin Li directory) from your native .rs files 140*1789df15SXin Li 141*1789df15SXin LiRevision 9 (01/2011): 142*1789df15SXin Li- Fix packaging issue that broke draw9patch 143*1789df15SXin Li- Ant build rules will now check the Ant version and fail if it's older than 1.8 144*1789df15SXin Li- Fix "folder locked" errors when installing packages in SDK Manager on Windows. 145*1789df15SXin Li- Support https proxy when installing from SDK Manager. 146*1789df15SXin Li- SDK Manager now suggests to install missing base platform for add-ons. 147*1789df15SXin Li- Default proguard config file changes: 148*1789df15SXin Li * ignore classes extending android.preference.Preference 149*1789df15SXin Li * ignore classes extending android.app.backup.BackupAgentHelper 150*1789df15SXin Li- Ant lib rules now allow for overriding java.encoding, java.source, and java.target 151*1789df15SXin Li- Default encoding for Ant javac is now UTF-8 152*1789df15SXin Li- Logcat view in DDMS now properly displays UTF-8 characters. 153*1789df15SXin Li 154*1789df15SXin Li 155*1789df15SXin LiRevision 8 (12/2010): 156*1789df15SXin Li- New SDK component: platform-tools. This makes all platforms use the same 157*1789df15SXin Li latest version of aapt/aidl/dx. 158*1789df15SXin Li- Support for true debug build. No need to change the value of debuggable in 159*1789df15SXin Li the Android Manifest. 160*1789df15SXin Li "ant debug" will automatically insert debuggable==true, while "ant release" 161*1789df15SXin Li will not. 162*1789df15SXin Li If debuggable=true is set, then "ant release" will actually do a debug build. 163*1789df15SXin Li- Automatic Proguard support in release builds. Only need to have a proguard.config 164*1789df15SXin Li property in default.properties that points to a proguard config file. 165*1789df15SXin Li- new overridable Ant javac properties: java.encoding, java.source, and java.target 166*1789df15SXin Li (default to "ascii", "1.5" and "1.5") 167*1789df15SXin Li 168*1789df15SXin Li 169*1789df15SXin LiRevision 7 (09/2010): 170*1789df15SXin Li- Support for Ant rules provided by the Tools components (override the one in 171*1789df15SXin Li the platform component) 172*1789df15SXin Li- Added support for libraries with library dependencies. 173*1789df15SXin Li- Support for aidl files in library projects. 174*1789df15SXin Li- Support for extension targets in Ant build to perform tasks between the 175*1789df15SXin Li normal tasks: -pre-build, -pre-compile, -post-compile. 176*1789df15SXin Li- Headless SDK update. See 'android -h update sdk' for more info. 177*1789df15SXin Li- Fixed location control in DDMS to work in any locale not using '.' as a 178*1789df15SXin Li decimal point. 179*1789df15SXin Li 180*1789df15SXin Li 181*1789df15SXin LiRevision 6 (05/2010) 182*1789df15SXin Li- Support for library project to share code/resources among projects 183*1789df15SXin Li - Updated Ant rules and custom tasks 184*1789df15SXin Li - New "android create lib-project", "android update lib-project" actions. 185*1789df15SXin Li - New parameter for "android update project" 186*1789df15SXin Li 187*1789df15SXin Li 188*1789df15SXin LiRevision 5 (03/2010): 189*1789df15SXin Li- AVD/SDK Manager: 190*1789df15SXin Li - Fixed SSL download for the standalone version of the SDK Updater. 191*1789df15SXin Li - Fixed issue with 64bit JVM on windows. 192*1789df15SXin Li - Add support for samples components. 193*1789df15SXin Li - improved support for dependency between components. 194*1789df15SXin Li - AVDs now sorted by API level. 195*1789df15SXin Li - Prevent deletion of running AVDs. 196*1789df15SXin Li - Settings are now automatically saved, no need to click Apply. 197*1789df15SXin Li- Emulator now requires sd card to be 9MB and above. 198*1789df15SXin Li- Fixed layoutopt.bat to correctly execute on Windows. 199*1789df15SXin Li 200