aboutsummaryrefslogtreecommitdiffstats
path: root/changes.txt
blob: 67f6cf25e0c8622e65671be7be3d0e634ae48ed3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
Change log for Android SDK Tools.

Revision 20:
- Ant build system:
   * the location of the SDK can now be set through the ANDROID_HOME
     environment variable (requires updating the project's build.xml file)
   * Fixed issues with compilation, deployment of test projects and running tests.
     Both separate test projects and self-contained app+test projects now work.

Revision 19:
- Fix GPU rendering

Revision 18:
* Fix Ant issues where some jar libraries in libs/ are not picked in some
  cases
* New version of SdkController

Revision 17:
* Bug fixes.
* ProGuard updated to version 4.7. In addition to many new features,
  this will fix the "Conversion to Dalvik format failed with error 1"
  error some users have experienced.
* The default proguard.cfg file has been updated with better
  flags.
* Lint now checks Java code, and checks which previously performed
  pattern based searches in the Java code (such as the unused resource
  check) have been rewritten to use the more accurate Java parse
  trees.
* Lint supports library projects, so for example the unused resource
  check will properly handle resources declared in a library project
  and referenced in a downstream project.
* Lint warnings can be suppressed in Java code with the new
  @SuppressLint annotation, and in XML files with the new tools:
  namespace and ignore-attribute.
* New lint checks:
  * Find Android API calls that require a version of Android higher
    than the minimum supported version. You can use the new @TargetApi
    annotation to specify local overrides for conditionally loaded
    code.
  * Find object allocations within onDraw, onMeasure and onLayout
    calls
  * Find usages of HashMap<Integer,X> which can be replaced by the
    more efficient SparseArray, SparseIntArray or SparseBooleanArray
  * Find typos in XML namespace declarations, as well as unused custom
    namespace declarations and usages of custom namespaces in library
    projects which do not yet work
  * Find manifest files which declare more than one <uses-sdk>
    elements, or which fail to declare minSdkVersion or
    targetSdkVersion
  * Check dialog button order such that OK/Cancel are in the right
    order (depending on the target version of Android), that they are
    using the standard case ("OK", not "Ok" or "ok" etc), and that
    there aren't any Back buttons.
  * Check menus to ensure that they are using "ifRoom" instead of
    "always" for the showAsAction attribute (unless it's used
    sparingly)
  * Find hardcoded android:debuggable attributes on <application>
    elements. This can lead to accidentally leaving debug information
    in published applications.
  * Find errors in format strings. This includes inconsistencies
    between translated versions, as well as incompatible types
    declared in XML and supplied in the String.format call in Java.
  * Find incorrect casts in Java code where the cast is incompatible
    with the view type declared in XML layouts.
  * Find hardcoded references to "/sdcard" in Java code; these should
    be using Environment.getExternalStorageDirectory().getPath()
    instead
  * Find "import android.R" statements in Java code, which can lead to
    confusing compilation error messages
  * Find Java code which creates world-writeable files (which can lead
    to security problems)
  * Find references to private resources (which can lead to runtime
    errors on devices that do not provide the resource, since private
    resources may disappear any time, and may not be present on all
    platforms.)
  * Find invalid @id references (where for example a RelativeLayout
    references an id that does not exist anywhere). If no match is
    found, it looks for spelling mistakes and suggests other similar
    ids in the error message.
  * Finds method calls to java.lang.Math where a float variable is
    cast to a double and/or the return value is cast to a float, and
    suggests replacing it with the equivalent android.util.FloatMath
    method.
  * Finds calls to a getter on the same class where a field could be
    accessed instead.
  * Find XML files using a different encoding format than UTF-8, since
    this can lead to subtle bugs (and lint was fixed to properly use
    the specified encoding)
  * Find XML resource files that contain text which should not be
    there (such as in layouts). This can identify accidentally
    malformed documents which happen to be valid XML, such as a
    missing "<" tag opening character.
  * Find style references which lead to cycles, such as extending
    self.

Revision 16:
* New "lint" tool which scans Android project trees for potential
  problems such as missing translations, duplicate ids between layouts
  that include each other, using px instead of dp units, hardcoded
  strings, missing contentDescriptions, obsolete Proguard
  configuration files, etc. For a full list of available issues run
  "lint --show" (and see eclipse/changes.txt for further details).
* layoutopt was removed; its functionality is replaced by the new lint
  tool

Revision 14:

- Build performance improvements:
   * resource compilation and packaging now properly use dependency to only
     be executed if a resource changed.
   * Optimized resource compilation for projects with libraries. This should
     speed up this phase significantly for large projects with libraries.
   * PNG files that are optimized during resource packaging are now cached
     and only re-optimized if they changed instead of doing at every build.
- New library project mechanism:
   *

Revision 13:

Revision 12: (07/2011):
- The AVD manager and emulator can now use system images compiled for ARM v7 and
  x86 CPUs.

Revision 11 (05/2011):
- See eclipse/changes.txt for ADT related changes.

Revision 10 (02/2011):
- The tools now automatically generate Java Programming Language
  source files (in the gen directory) and bytecode (in the res/raw
  directory) from your native .rs files

Revision 9 (01/2011):
- Fix packaging issue that broke draw9patch
- Ant build rules will now check the Ant version and fail if it's older than 1.8
- Fix "folder locked" errors when installing packages in SDK Manager on Windows.
- Support https proxy when installing from SDK Manager.
- SDK Manager now suggests to install missing base platform for add-ons.
- Default proguard config file changes:
   * ignore classes extending android.preference.Preference
   * ignore classes extending android.app.backup.BackupAgentHelper
- Ant lib rules now allow for overriding java.encoding, java.source, and java.target
- Default encoding for Ant javac is now UTF-8
- Logcat view in DDMS now properly displays UTF-8 characters.


Revision 8 (12/2010):
- New SDK component: platform-tools. This makes all platforms use the same
  latest version of aapt/aidl/dx.
- Support for true debug build. No need to change the value of debuggable in
  the Android Manifest.
  "ant debug" will automatically insert debuggable==true, while "ant release"
  will not.
  If debuggable=true is set, then "ant release" will actually do a debug build.
- Automatic Proguard support in release builds. Only need to have a proguard.config
  property in default.properties that points to a proguard config file.
- new overridable Ant javac properties: java.encoding, java.source, and java.target
  (default to "ascii", "1.5" and "1.5")


Revision 7 (09/2010):
- Support for Ant rules provided by the Tools components (override the one in
  the platform component)
- Added support for libraries with library dependencies.
- Support for aidl files in library projects.
- Support for extension targets in Ant build to perform tasks between the
  normal tasks: -pre-build, -pre-compile, -post-compile.
- Headless SDK update. See 'android -h update sdk' for more info.
- Fixed location control in DDMS to work in any locale not using '.' as a
  decimal point.


Revision 6 (05/2010)
- Support for library project to share code/resources among projects
    - Updated Ant rules and custom tasks
    - New "android create lib-project", "android update lib-project" actions.
    - New parameter for "android update project"


Revision 5 (03/2010):
- AVD/SDK Manager:
	- Fixed SSL download for the standalone version of the SDK Updater.
	- Fixed issue with 64bit JVM on windows.
	- Add support for samples components.
	- improved support for dependency between components.
	- AVDs now sorted by API level.
	- Prevent deletion of running AVDs.
	- Settings are now automatically saved, no need to click Apply.
- Emulator now requires sd card to be 9MB and above.
- Fixed layoutopt.bat to correctly execute on Windows.