History log of /frameworks/base/libs/androidfw/TypeWrappers.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c8f71aa67ea599cb80205496cb67e9e7a121299c 08-Feb-2017 Adam Lesinski <adamlesinski@google.com> Add ResTable_sparseTypeEntry support

Benchmarks on bullhead-userdebug show that there is a negligent
performance impact when using sparse entries on a 30% loaded
sparse type of 1000 resources.

Benchmark Time CPU Iterations
-----------------------------------------------------------------------------------
BM_SparseEntryGetResourceSparseLarge 255 ns 254 ns 2751408
BM_SparseEntryGetResourceNotSparseLarge 254 ns 254 ns 2756534

Bug: 27381711
Test: make libandroidfw_tests aapt2_tests
Change-Id: I051ea22f2f6b2bc3696e446adc9e2a34be18009f
/frameworks/base/libs/androidfw/TypeWrappers.cpp
fb600d60c06192f1a5b1c09bc86f92a80894a6c1 18-Jun-2014 Adam Lesinski <adamlesinski@google.com> Fix build break in log statement

For logging purposes, a uint32_t was being converted into
a void pointer, which on certain systems would be a conversion
to a different size.

Change-Id: I90af69ab975d84c9c8cbb1cce94ff4e9cc6edcf2
/frameworks/base/libs/androidfw/TypeWrappers.cpp
f90f2f8dc36e7243b85e0b6a7fd5a590893c827e 06-Jun-2014 Adam Lesinski <adamlesinski@google.com> Support multiple resource tables with same package

In order to support APK split features, the resource
table needs to support loading multiple resource
tables with the same package but potentially new set
of type IDs.

This adds some complexity as the type ID space changes
from dense and ordered to potentially sparse.

A ByteBucketArray is used to store the type IDs in
a memory efficient way that allows for fast retrieval.

In addition, the IDMAP format has changed. We no longer
need random access to the type data, since we store the
types differently. However, random access to entries of
a given type is still required.

Change-Id: If6f5be680b405b368941d9c1f2b5d2ddca964160
/frameworks/base/libs/androidfw/TypeWrappers.cpp