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