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