Add the layoutlib and layoutlib-create tests to DIST_DIR for sdk
targets. These can be used for continuous testing on the build server.
Change-Id: I747dddcddfd8009937668bec4d75cb99bf63235f
Ignore deprecation, synchronized, and throws definitions. Look
through full inheritance hierarchy to catch refactored classes like
BaseBundle.
Change-Id: I10ab0b4a0ef64e7508f38d0c223f08711293d643
Now offers to parse the output of git blame, and includes the last
person to modify that API for each reported failure.
Add more exemptions, and check for boolean setFoo() method inside a
separate Builder inner class.
Change-Id: Id32dcbd5edf17d2360e4f782110bc1c445f7936e
Fix intelliJ warnings in ResourceHelper. Most of them just change
boolean checks "x == false" with "!x".
Change-Id: I278645e2807affd8b3183a4a6f5e4fa2ab7b3d21
When offering a helper Service, etc, all platform provided methods
should be marked final. Otherwise, if available for developer to
override, they should follow onFoo() style naming.
Catch anyone returning concrete collections types, and look for
overlapping flags.
Change-Id: I29d95f3dff78a4da968a46f10be89eada509648c
Now it can identify layering violations, like when something deep in
android.os depends on android.app.
Change-Id: I94606c642195b3ed7558ff6979ed4a181cd85fa2
Detects common public API mistakes, making it easy to quickly scan
across all changes in a new API level.
Builds in-memory representation of the current API, then runs various
detectors over the classes. It collects failures, and can ignore
known failures from a previous API level.
Example usage:
$ python frameworks/base/tools/apilint/apilint.py \
frameworks/base/api/current.txt \
prebuilts/sdk/api/21.txt
Change-Id: Ie1f88894baf9f79e4b11e78c47f848ea5e25fc25
The versionCode of theframework resources that an app is built against
gets stamped inside an app's AndroidManifest.xml in the <manifest>
tag as "platformBuildVersionCode" and "platformBuildVersionName"
attributes.
Bug:17207635
Change-Id: Id573c3dffcbca38eec9c0eb3e89f4a547e3361d3
The check was always false. This wasn't really a problem since the regex
check later took care of it. But it's just wrong to leave such mistakes
in the code once they are noticed.
Change-Id: I84270a96141428bf15949ce8c881d2e4a2aa95f6
enums in resources were only read for integer attributes. This change
parses the enums for dimension resources also. This also means that we
don't have to hardcode the resolution for match_parent and wrap_content.
TODO: Fix this for all resource types.
Bug: http://b.android.com/75285
Change-Id: I86752b2322ea017499942a87568ba5c54b8654e4
Remove references to the resourceValue for "@null". This saves needless
checking for "@null" every time an attribute is requested.
Change-Id: I816e78619fa0b1ddcacd1ef5ac90765e30a9a44c
- Reverting changes to the existing thumbnail transition to prevent breaking applications
that currently depend on that transition. As a result, we need to create a new, hidden,
aspect-scaled thumbnail transition, and instead use that thumbnail to animate the
recents header so that we don't have to wait to do that inside the Recents activity.
In order for this to work, we also have to ensure that the thumbnail surface destruction
is synchronized with the application that is currently closing (when going down to
recents) or opening (when coming back up). The current thumbnail is destroyed when the
animation ends, but that can be at least 1 frame before the surface for the animating
window is destroyed. We change this by deferring destruction of this thumbnail window
to the animation that is being closed.
Especially on the way up, not having to wait for us to hide the header before doing the
transition up can save us the duration of that first animation (> 100ms).
- Other optimizations:
* No longer creating a new stack view on each transition to calculate the target rect
* Removing unnecessary call to get the thumbnail when transitioning up/down (the actual
window does its own animation.
* We reduced numerous system calls per task by adding a flag to ignore home-stack tasks
and caching the activity label and icon (and task description icon). These caches
follow the same eviction schemes as the thumbnail and icon cache.
- Also tweaked the touch slop for the nav bar swiping gesture to prevent conflicting with
tapping on home (Bug 17109581)
Change-Id: Ica697aad788051a9203edd9351c583e1cb038a71
This is meant to be used with scaleable vector
drawables, and are chosen as the best match unless
there is a configuration that matches the density
requested exactly.
Bug:17007265
Change-Id: Ic3288d0236fe0bff20bb1599aba2582c25b0db32
Color attributes were not being converted to int properly. The
conversion to int was a simple string to int using base 16. This change
resolves the colors as per #RGB, #ARGB, #RRGGBB or #AARRGGBB format
depending on the length of the attribute. All values that begin with '#'
are treated as colors.
Bug: http://b.android.com/73845
Change-Id: I8ad089b821af1e290b9b95771b50213fe2fdd784
(cherry picked from commit 81564dfe60020fa977d39d168f682e9d61825660)
The variable is not actually needed and it makes working with different
API levels a lot easier since everything now depends on $PROJECT_DIR$.
This change also makes the tests more robust by improving the way it
tries to find the SDK.
Change-Id: I3502ad4a0ba85fd88b497e47964fddb2a89e520c
Previously, when filtering resources from an APK using
-c option, if one qualifier matched, we would keep the resource.
However, in the case of something like
-c fr-FR,sw360dp
and with a resource in the APK like so
drawable-fr-FR-sw600dp-v13
we would want this resource to be excluded, as it does not
match the sw360dp qualifier (must be less than or equal to it).
This CL fixed the behavior of the filter to require that all
defined qualifier axis be matched.
Bug:17142358
Change-Id: Ie48f3d516a0e610abc7ba8a7ced4eb3ab52534d4
Mipmaps are never filtered, and so they will always
end up in the base APK. Make sure they get omitted from
any split.
Change-Id: Id24b082bc9bd2d3f031a58bd0de4d30b4f0de7e0
Some resource directories may be the same even though
their names are different. For instance, the
"smallest width" qualifier was added in API 13,
so the resource directory "values-sw600dp" and
"values-sw600dp-v13" are the same and cause
a conflict. The error reports that this might be the
case.
Change-Id: Ia35f1d670edd48265b3a7fe3d55656128421f612
Teams are constantly confused over which version of aapt
they are running. Include the build number from the
Android build system in the binary. Can be retrieved by executing
'aapt version'.
Change-Id: I9165c7d01f977344e143c2cb4dd963310ab28b72
Teams are constantly confused over which version of aapt
they are running. Include the build number from the
Android build system in the binary. Can be retrieved by executing
'aapt version'.
Change-Id: Ie4692fb160c7cbe720a8e76b73e435170214fe0e
When android:multiArch="true" in the <application> tag,
aapt dump badging should only output the 64-bit architecture
under the 'native-code' entry.
Other architectures will be emitted under the 'alt-native-code'
entry.
Bug:17061929
Change-Id: I8310b2388b06a2ed571e5e121e4989403082ba68