summaryrefslogtreecommitdiffstats
path: root/libs/androidfw
Commit message (Collapse)AuthorAgeFilesLines
* Add support for building split APKsAdam Lesinski2014-05-111-42/+49
| | | | | | | | | | | | | | Build multiple APKs, each containing a disjoint subset of configurations. These can then be loaded into the device AssetManager and should operate as if they were never split. Use the idea of building multiple sets of files, where each set represents an APK. An ApkBuilder can place files in a set based on its configuration, but you can actually add directly to a set, in the case of the resources.arsc and generated AndroidManifest.xml for splits. Change-Id: Ic65d3f0ac1bbd290185695b9971d425c85ab1de3
* am 642421aa: am 5c31e487: Merge "Introduce new UI_MODE_TYPE_WATCH and ↵John Spurlock2014-04-041-0/+3
|\ | | | | | | | | | | | | qualifier." into klp-modular-dev * commit '642421aa7f284817cc1a972a7f9c7a64696a0116': Introduce new UI_MODE_TYPE_WATCH and qualifier.
| * am 5c31e487: Merge "Introduce new UI_MODE_TYPE_WATCH and qualifier." into ↵John Spurlock2014-04-041-0/+3
| |\ | | | | | | | | | | | | | | | | | | klp-modular-dev * commit '5c31e487c4577e1c47ee7c949325d6a13f0d462e': Introduce new UI_MODE_TYPE_WATCH and qualifier.
| | * Introduce new UI_MODE_TYPE_WATCH and qualifier.John Spurlock2014-04-041-0/+3
| | | | | | | | | | | | | | | | | | | | | Default ui mode to watch if we have FEATURE_WATCH. Bug:13395758 Change-Id: Ie5ff95de60e69e91ad3612c7d2f1fca7f49061bd
* | | resolved conflicts for merge of 22d07464 to masterNarayan Kamath2014-03-274-18/+21
|\ \ \ | |/ / | | | | | | Change-Id: Ic037261eedd6e224938c960d2b4597590c81ed9d
| * | AArch64: Make frameworks/base code more portableAshok Bhat2014-03-274-18/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in this patch include [x] Use %zu for size_t, %zd for ssize_t [x] Some minor changes have been done to conform with standard JNI practice (e.g. use of jint instead of int in JNI function prototypes) Change-Id: Id1aaa7894a7d0b85ac7ecd7b2bfd8cc40374261f Signed-off-by: Ashok Bhat <ashok.bhat@arm.com> Signed-off-by: Craig Barber <craig.barber@arm.com> Signed-off-by: Kévin PETIT <kevin.petit@arm.com> Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
* | | Shared library resource supportAdam Lesinski2014-03-253-62/+344
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Shared libraries can now export resources for applications to use. Exporting resources works the same way the framework exports resources, by defining the public symbols in res/values/public.xml. Building a shared library requires aapt to be invoked with the --shared-lib option. Shared libraries will be assigned a package ID of 0x00 at build-time. At runtime, all loaded shared libraries will be assigned a new package ID. Currently, shared libraries should not import other shared libraries, as those dependencies will not be loaded at runtime. At runtime, reflection is used to update the package ID of resource symbols in the shared library's R class file. The package name of the R class file is assumed to be the same as the shared library's package name declared in its manifest. This will be customizable in a future commit. See /tests/SharedLibrary/ for examples of a shared library and its client. Bug:12724178 Change-Id: I60c0cb8ab87849f8f8a1a13431562fe8603020a7
* | | am 9ca25502: am 48250e14: am 9a09a523: am 0b472ae1: Merge "androidfw: ↵Mark Salyzyn2014-03-196-98/+98
|\ \ \ | |/ / | | | | | | | | | | | | | | | resolve 64-bit build issues" * commit '9ca25502c05854288733ee5142e8bf6594821f83': androidfw: resolve 64-bit build issues
| * | androidfw: resolve 64-bit build issuesMark Salyzyn2014-03-196-98/+98
| | | | | | | | | | | | | | | | | | | | | | | | - uid_t/gid_t cast to unsigned long - unused argument warnings - tab and space requirements Change-Id: Ib446d8165b9082be02edb55e6b71fd1a03ea3431
* | | resolved conflicts for merge of 92860a74 to masterNarayan Kamath2014-03-101-36/+36
|\ \ \ | |/ / | | | | | | Change-Id: I3036ef9f1251c756092dc5ee2c4fed8146855e1e
| * | LP64: Make 9 patches architecture agnostic.Narayan Kamath2014-03-101-36/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Res_png_9patch struct had several pointer members whose size differed between 32 and 64 bit platforms. These members have been replaced by uint32_t offsets to serialized data. The serialized form for 9patches places a Res_png_9patch object at the beginning of serialized data, followed by int32_t arrays of xDivs, yDivs and colors. Note that these offsets are not strictly required, since they can be computed from the values of numXDivs, numYDivs & numColors, however they are called in tight loops so having them computed once is a beneficial. This change also removed the unused patch_equals function from aapt's Image.cpp. Change-Id: I3b9ac8ae5c05510d41377cae4dff1c69b40c2531
* | | am d8ccf8b7: am be094d89: am 8fb22ae7: am eee2c72f: Merge "Various format ↵Narayan Kamath2014-02-281-4/+4
|\ \ \ | |/ / | | | | | | | | | | | | | | | string fixes for 64bit" * commit 'd8ccf8b789461e1706d10df44d109849fa974fc5': Various format string fixes for 64bit
| * | Various format string fixes for 64bitKévin PETIT2014-02-241-4/+4
| | | | | | | | | | | | | | | Change-Id: I74532a4e0400033f5ee3e3f6827ac42f77d16f53 Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
* | | Don't assume that we're at start of file at ctor timeChristopher Tate2014-02-211-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BackupDataReader / BackupDataWriter were implicitly assuming that when instantiated, the underlying fd was positioned at start-of-file. If one tried to e.g. open an existing data stream to append further data to it, things might randomly fail (at read time, possibly when consuming the stream later) due to incorrect alignment of the data entities: the appending writer would assume that no padding was needed to achieve correct alignment, and this might easily be false. Now the underlying native reader/writer helpers recognize the true position within the file when constructed, and as a result it's now safe to e.g. construct a BackupDataOutput for an existing file and then append to it. Change-Id: If0484921e687852f923a4b4efabff573a6c16981
* | | am bcb433b4: am b1903653: am 128599e4: am 2b3c14bf: Merge "libandroidfw: fix ↵Narayan Kamath2014-02-201-39/+36
|\ \ \ | |/ / | | | | | | | | | | | | | | | build error for 64-bit" * commit 'bcb433b43acb424ff7bc6afab03ce12d8cc9a198': libandroidfw: fix build error for 64-bit
| * | libandroidfw: fix build error for 64-bitPatrik Bannura2014-02-201-39/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed casting int to pointer in logging code. Previously ints where printed as pointers and the %p format specifier was used for convenience to get hex output. This change uses %x and also gets rid of the casts. Change-Id: Ia2539769d245f50c0f3884119f80682defe69d61
| * | Extended locales in AAPT / AssetManager.Narayan Kamath2014-02-143-46/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support 3 letter language codes, script codes & variants. The bulk of the changes are related to the implementation of command line filtering of locales etc. The previous code assumed that the value of each "axis" (locale, density, size etc.) could be represented by a 4 byte type. This is no longer the case. This change introduces a new class, AaptLocaleValue which holds a (normalized) locale parsed from a directory name or a filter string. This class takes responsibility for parsing locales as well as writing them to ResTable_config structures, which is their representation in the resource table. This includes minor changes at the java / JNI level for AssetManager. We now call locale.toLanguageTag() to give the native layer a well formed BCP-47 tag. I've removed some duplicated parsing code in AssetManager.cpp and replaced them with functions on ResTable_config. The native getLocales function has been changed to return well formed BCP-47 locales as well, so that the corresponding java function can use Locale.forLanguageTag to construct a Locale object out of it. Finally, this change introduces default and copy constructors for ResTable_config to prevent having to memset() the associated memory to 0 on every stack allocation. (cherry-picked from commit 91447d88f2bdf9c2bf8d1a53570efef6172fba74) Change-Id: I1b43086860661012f949fb8e5deb7df44519b854
| * | AssetManager support for 3 letter lang/country codes.Narayan Kamath2014-02-143-45/+347
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 3 letter codes are packed into the existing 32 bit locale field in ResTable_config - We introduce new fields for script / variant information. Note that we define a "match" between two ResTable_config structures to be purely on the basis of their language & country (disregarding the script and the variant). However, configs with scripts and variants are considered to be more specific than those without. (cherry picked from commit 378c6775a62d9c461cde51f06c1b14bb014c78fd) Change-Id: I7dce82a3fe2412834252723f458826ae41535a78
| * | Use size_t* in AssetManager::createIdmapColin Cross2014-02-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | ResTable::createIdmap takes a size_t*, and the idmap command is passing in a size_t*, make AssetManager::createIdmap take a size_t*. Should fix the mac build. Change-Id: Idc16dedfe2aa7367c75f89a937a8242d494e8f8e
* | | resolved conflicts for merge of 1cbea39f to masterNick Kralevich2014-02-122-172/+218
|\ \ \ | | | | | | | | | | | | Change-Id: Ib33484546c6a03cbc4cd96e97d9d785d68e10700
| * \ \ resolved conflicts for merge of dd3d95f1 to klp-volantis-devNick Kralevich2014-02-122-172/+218
| |\ \ \ | | |/ / | | | | | | | | Change-Id: I96c0f0da852a0b3cf8aef9158678d38aa30f456f
| | * | Runtime resource overlay, iteration 2Mårten Kongstad2014-02-032-172/+218
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support any number of overlay packages. Support any target package. UPDATED PACKAGE MATCHING ------------------------ In Runtime resource overlay, iteration 1, only a single overlay package was considered. Package matching was based on file paths: /vendor/overlay/system/framework-res.apk corresponded to /system/framework-res.apk. Introduce a more flexible matching scheme where any package is an overlay package if its manifest includes <overlay targetPackage="com.target.package"/> For security reasons, an overlay package must fulfill certain criteria to take effect: see below. THE IDMAP TOOL AND IDMAP FILES ------------------------------ Idmap files are created by the 'idmap' binary; idmap files must be present when loading packages. For the Android system, Zygote calls 'idmap' as part of the resource pre-loading. For application packages, 'idmap' is invoked via 'installd' during package installation (similar to 'dexopt'). UPDATED FLOW ------------ The following is an outline of the start-up sequences for the Android system and Android apps. Steps marked with '+' are introduced by this commit. Zygote initialization Initial AssetManager object created + idmap --scan creates idmaps for overlays targeting 'android', \ stores list of overlays in /data/resource-cache/overlays.list AssetManager caches framework-res.apk + AssetManager caches overlay packages listed in overlays.list Android boot New AssetManager's ResTable acquired AssetManager re-uses cached framework-res.apk + AssetManager re-uses cached 'android' overlays (if any) App boot ActivityThread prepares AssetManager to load app.apk + ActivityThread prepares AssetManager to load app overlays (if any) New AssetManager's ResTable acquired as per Android boot SECURITY -------- Overlay packages are required to be pre-loaded (in /vendor/overlay). These packages are trusted by definition. A future iteration of runtime resource overlay may add support for downloaded overlays, which would likely require target and overlay signatures match for the overlay to be trusted. LOOKUP PRIORITY --------------- During resource lookup, packages are sequentially queried to provide a best match, given the constraints of the current configuration. If any package provide a better match than what has been found so far, it replaces the previous match. The target package is always queried last. When loading a package with more than one overlay, the order in which the overlays are added become significant if several packages overlay the same resource. Had downloaded overlays been supported, the install time could have been used to determine the load order. Regardless, for pre-installed overlays, the install time is randomly determined by the order in which the Package Manager locates the packages during initial boot. To support a well-defined order, pre-installed overlay packages are expected to define an additional 'priority' attribute in their <overlay> tags: <overlay targetPackage="com.target.package" priority="1234"/> Pre-installed overlays are loaded in order of their priority attributes, sorted in ascending order. Assigning the same priority to several overlays targeting the same base package leads to undefined behaviour. It is the responsibility of the vendor to avoid this. The following example shows the ResTable and PackageGroups after loading an application and two overlays. The resource lookup framework will query the packages in the order C, B, A. +------+------+- -+------+------+ | 0x01 | | ... | | 0x7f | +------+------+- -+------+------+ | | "android" Target package A | Pre-installed overlay B (priority 1) | Pre-installed overlay C (priority 2) Change-Id: If49c963149369b1957f7d2303b3dd27f669ed24e
| * | | Fix build.Dianne Hackborn2014-02-111-2/+2
| |/ / | | | | | | | | | | | | | | | At least part of what is broken. Other stuff still seems to be. Change-Id: I367dc0377bd5b4e59d9d9b68f3506bf1d64aa591 (cherry picked from commit 32bb5fae353b5bb6275e75952e89c514c7369cee)
* | | Fix build.Dianne Hackborn2014-02-111-2/+2
| | | | | | | | | | | | | | | | | | At least part of what is broken. Other stuff still seems to be. Change-Id: I367dc0377bd5b4e59d9d9b68f3506bf1d64aa591
* | | am be49403a: am 0cd115e1: am 578087e3: Merge "New command line tool \'idmap\'"Dianne Hackborn2014-02-112-1/+26
|\ \ \ | |/ / | | | | | | | | | * commit 'be49403a0362c18edaeafe59ac09baac14294dee': New command line tool 'idmap'
| * | New command line tool 'idmap'Mårten Kongstad2014-02-032-1/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce a new tool 'idmap' to handle generation and verification of idmap files. The tool is modelled on 'dexopt', and is intended to be used similarly, notably by 'installd'. See cmds/idmap/idmap.cpp for further documentation on 'idmap'. Note: this commit is interdependent on a commit in project build/ to add 'idmap' to PRODUCT_PACKAGES. Note: the changes to androidfw are only stubs. The actual implementation will be provided in Runtime resource overlay, iteration 2. Change-Id: I7131b74ece1e46c8a9c0a31d103e686aa07da2bb
| * | Change ResourceType cookies to int32_t.Narayan Kamath2014-01-312-17/+17
| |/ | | | | | | | | | | | | | | | | Also change the order of parameters in ResTable constructors to avoid ambiguity. (cherry picked from commit 00b314436f4fdfada4bbf1e79ec12e9fa38aeaf1) Change-Id: I874c5d03c134dc3c331fba423b5280366296287c
| * AssetManager cookies should be int32_t and not void*.Narayan Kamath2014-01-271-13/+12
| | | | | | | | | | | | | | | | | | | | | | | | Cookies are really indices into vectors and arrays, so they don't need to be void*. We choose int32_t instead of size_t to allow their width to be well specified. (cherry picked from commit ebfdd0f467e39c3af8d92cade78263935340acb7) (cherry picked from commit a7fa2e592e2e579e5acdb903dba83fc074ebc215) (cherry picked from commit a9d5701b034ed2d9771b3f0943e1add00741d7cd) Change-Id: I2aed3db568b6fdc487bf99e2c5dd123206736fda
| * Add libutils dependency for libandroidfw host build.Narayan Kamath2013-12-111-2/+1
| | | | | | | | Change-Id: I7fe0bb466f0b1cdbfef8934da2231ad20f05b648
| * Reimplement ZipFileRO in terms of libziparchive.Narayan Kamath2013-12-097-1004/+249
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This lets us share zip archive processing code with both the runtime (Art, dalvik) and critical java code (StrictJarFile). This change also moves several utility methods to ZipUtils and dedups code across several zip inflation methods. One of the side effects of this change is that several processing loops are now O(n) instead of O(n^2). bug: 10193060 Change-Id: I3c7188496837a47246c4f342e45485a70fef3169
| * Merge commit 'b873a17ce7be0a9771c24999adca6964431728f6' into HEADThe Android Open Source Project2013-11-2223-6048/+1776
| |\ | | | | | | | | | Change-Id: I938755073e70602cc8f51ce9bd420fdcf870cecd
| * | Fix a variety of small publicly-reported bugs.Elliott Hughes2013-10-292-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Possible NULL dereference in cmds/bootanimation/BootAnimation.cpp. https://code.google.com/p/android/issues/detail?id=61556 Missing fclose in core/jni/android_os_Debug.cpp. https://code.google.com/p/android/issues/detail?id=61546 Bad loop guards in core/jni/android_util_Process.cpp. https://code.google.com/p/android/issues/detail?id=61557 Assignment to wrong variable in libs/androidfw/AssetManager.cpp. https://code.google.com/p/android/issues/detail?id=61560 Missing delete[]s in libs/androidfw/ObbFile.cpp. https://code.google.com/p/android/issues/detail?id=61549 Leaks on error in tools/aapt/Images.cpp. https://code.google.com/p/android/issues/detail?id=61552 Two missing fclose calls in tools/aapt/Resource.cpp. https://code.google.com/p/android/issues/detail?id=61553 Missing fclose in tools/aidl/aidl.cpp. https://code.google.com/p/android/issues/detail?id=61554 Change-Id: I5820f3824e72d07a9acb776cf0af3e7443f5694a
* | | Extended locales in AAPT / AssetManager.Narayan Kamath2014-02-103-46/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support 3 letter language codes, script codes & variants. The bulk of the changes are related to the implementation of command line filtering of locales etc. The previous code assumed that the value of each "axis" (locale, density, size etc.) could be represented by a 4 byte type. This is no longer the case. This change introduces a new class, AaptLocaleValue which holds a (normalized) locale parsed from a directory name or a filter string. This class takes responsibility for parsing locales as well as writing them to ResTable_config structures, which is their representation in the resource table. This includes minor changes at the java / JNI level for AssetManager. We now call locale.toLanguageTag() to give the native layer a well formed BCP-47 tag. I've removed some duplicated parsing code in AssetManager.cpp and replaced them with functions on ResTable_config. The native getLocales function has been changed to return well formed BCP-47 locales as well, so that the corresponding java function can use Locale.forLanguageTag to construct a Locale object out of it. Finally, this change introduces default and copy constructors for ResTable_config to prevent having to memset() the associated memory to 0 on every stack allocation. Change-Id: I899a56a9a182ee6be52b9389d1ae59266f5482e9
* | | AssetManager support for 3 letter lang/country codes.Narayan Kamath2014-02-103-45/+347
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 3 letter codes are packed into the existing 32 bit locale field in ResTable_config - We introduce new fields for script / variant information. Note that we define a "match" between two ResTable_config structures to be purely on the basis of their language & country (disregarding the script and the variant). However, configs with scripts and variants are considered to be more specific than those without. Change-Id: I3c2e909ebbebdbbd0ab72a639d531b2b9fdbd9b9
* | | Change ResourceType cookies to int32_t.Narayan Kamath2014-01-282-17/+17
| | | | | | | | | | | | | | | | | | | | | Also change the order of parameters in ResTable constructors to avoid ambiguity. Change-Id: If7bfa1f640dddca39b9f26a3ce84081fa7b6e6e3
* | | AssetManager cookies should be int32_t and not void*.Narayan Kamath2014-01-271-13/+12
| | | | | | | | | | | | | | | | | | | | | | | | Cookies are really indices into vectors and arrays, so they don't need to be void*. We choose int32_t instead of size_t to allow their width to be well specified. Change-Id: I319f271bd4f102dee7cb9f00df4c75ea697456f5
* | | Add libutils dependency for libandroidfw host build.Narayan Kamath2014-01-271-2/+1
| | | | | | | | | | | | | | | | | | (cherry picked from commit 070274ec0ccb8643c52e41e4119f356f0f51bc36) Change-Id: I25acff1d36b3adce14b2576485bda93c914d7f5d
* | | Reimplement ZipFileRO in terms of libziparchive.Narayan Kamath2014-01-277-1004/+249
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This lets us share zip archive processing code with both the runtime (Art, dalvik) and critical java code (StrictJarFile). This change also moves several utility methods to ZipUtils and dedups code across several zip inflation methods. One of the side effects of this change is that several processing loops are now O(n) instead of O(n^2). bug: 10193060 (cherry picked from commit afd31e08299008fdc5c2813f21b2573f29dc53df) Change-Id: Iae67e62f1dc6dfc3f43e29bc38e3ffd1cb14d191
* | | Re-apply androidfw fixes lost by the directory rearrangement.Elliott Hughes2014-01-272-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Assignment to wrong variable in libs/androidfw/AssetManager.cpp. https://code.google.com/p/android/issues/detail?id=61560 Missing delete[]s in libs/androidfw/ObbFile.cpp. https://code.google.com/p/android/issues/detail?id=61549 Change-Id: I24e6867284d70a7793d78e62d1a836cbee310fb0
* | | Revert "move libandroidfw to frameworks/native"Adam Lesinski2014-01-2719-0/+14047
| | | | | | | | | | | | This reverts commit 84b6292c33d71b5739828d08aa8101d1954577f2.
* | | move libandroidfw to frameworks/nativeMike Lockwood2013-10-0319-14047/+0
| | | | | | | | | | | | Change-Id: Ic5b8a2742c7141156ab0f00ca29097bfe92bce60
* | | add a test for BackupData helpers.Chris Wren2013-09-252-0/+439
| |/ |/| | | | | | | Bug: 10821481 Change-Id: I3e28123d36927ae4a22d26378b8bf1cd4e87cfd2
* | Fix another off-by-one error in ZipFileROKenny Root2013-09-111-1/+1
| | | | | | | | | | Bug: 10424836 Change-Id: I491458bd31ef39e87127d061427b32a3d59ac807
* | Reconcile differences between zip implementationsKenny Root2013-09-111-65/+129
| | | | | | | | | | | | | | | | Reconcile the difference between ZipFileRO and java.util.ZipFile to have the same behavior. Bug: 10424836 Change-Id: I6bde1bad7e20065ee650945fd43a913c05ce5ac7
* | Revert "Reconcile differences between zip implementations"Kenny Root2013-09-111-129/+65
| | | | | | | | | | | | This reverts commit 9ffddc7eb50653cf60ce6b27a0e1945eed5b5ce1. Change-Id: Ifeba63511211bfc2b375f2205e319e91403b7d06
* | Reconcile differences between zip implementationsKenny Root2013-09-111-65/+129
| | | | | | | | | | | | | | Reconcile the difference between ZipFileRO and java.util.ZipFile to have the same behavior. Bug: 10424836 Change-Id: Iff159c9e1a91b59f6c5346dc0278cb9e4bbc1a39
* | Remove an unused C zip API.Elliott Hughes2013-08-052-55/+0
| | | | | | | | Change-Id: I10ae849bdedf3e3bb97547c4f9e5a20742e9d6b1
* | Resource memory optimization.Dianne Hackborn2013-07-311-83/+257
| | | | | | | | | | | | | | | | | | | | | | Don't ever need the cached UTF-16 string conversions on the device. Don't need to create those strings, and don't need to create the lookup array for them at all. This requires fixing all of the remaining places in the platform where we interacted with the resources with the blind assumption that the strings are UTF-16. Change-Id: Ia0e5a150499837471e494e85b23b05fa06e0cf1d
* | add static dependency on liblogColin Cross2013-07-231-0/+2
| | | | | | | | Change-Id: I8056aa744b37ef0c31229329a0de79c58c5955ea
* | Move input library code to frameworks/native.Jeff Brown2013-07-0117-5957/+16
| | | | | | | | | | | | | | | | | | No longer compile libandroidfw as a static library on the device since it already exists as a shared library. Keeping the static library would force us to provide a static library version of libinput for the device as well which doesn't make sense. Change-Id: I3517881b87b47dcc209d80dbd0ac6b5cf29a766f