replicant-frameworks_native/libs/utils
Kenny Root d4066a4ac5 ZipUtilsRO rewrite based on Dalvik Zip rewrite
Change the way zip archives are handled.  This is necessary to deal with
very large (~1GB) APK files, for which our current approach of mapping
the entire file falls over.

We now do the classic scavenger hunt for the End Of Central Directory
magic on a buffer of data read from the file, instead of a memory-mapped
section.  We use what we find to create a map that covers the Central
Directory only.

If the caller is interested in unpacking the file contents, we have to
do an additional file read to discover the size of the Local File Header
section so we can skip past it.

This is based on Change I745fb15abb in the dalvik tree. Both
implementations share a common ancestry, but the cost of unifying them
outweighs the benefits of wrapping C calls.

Change-Id: Iddacb50fe913917c2845708a530872d65fdbe620
2010-05-12 05:07:48 -07:00
..
Android.mk Make static versions of libutils and libbinder. 2010-05-06 01:03:31 -07:00
Asset.cpp Fix issue #2048263: More debugging information 2009-08-11 18:56:41 -07:00
AssetDir.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
AssetManager.cpp ZipUtilsRO rewrite based on Dalvik Zip rewrite 2010-05-12 05:07:48 -07:00
BackupData.cpp Turn off most of the backup-related debug logging 2009-09-30 17:07:37 -07:00
BackupHelpers.cpp Better (and less) logging from backup. 2009-06-26 17:19:11 -04:00
BufferedTextOutput.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
CallStack.cpp some work to try to reduce the code size of some native libraries 2009-05-26 16:12:20 -07:00
Debug.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
FileMap.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
Flattenable.cpp remove a dependency of GraphicBuffer (libui) on Parcel (libbinder). 2010-02-21 23:27:25 -08:00
misc.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
MODULE_LICENSE_APACHE2 auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
NOTICE auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
README auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
RefBase.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
ResourceTypes.cpp New xlarge screen size. 2010-04-28 16:51:52 -07:00
SharedBuffer.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
Static.cpp checkpoint: split libutils into libutils + libbinder 2009-05-20 12:55:02 -07:00
StopWatch.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
String8.cpp Make static versions of libutils and libbinder. 2010-05-06 01:03:31 -07:00
String16.cpp Optional use of UTF-8 strings in resource bundles 2009-12-07 15:14:15 -08:00
StringArray.cpp rename string_array.h to StringArray.h and move the implementation from the header file to a new cpp file. 2009-06-05 01:26:23 -07:00
SystemClock.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
TextOutput.cpp some work to try to reduce the code size of some native libraries 2009-05-26 16:12:20 -07:00
Threads.cpp Maybe really fix windows build. 2009-12-08 19:45:59 -08:00
Timers.cpp get rid of sleepForInterval() which didn't seem to be used anywhere in the source tree. Also get rid of ported.h which seem to be used only (possibly) in the sim. moved the implementation there. 2009-05-31 23:45:01 -07:00
VectorImpl.cpp Revert "fix [2542425] memory leak during video recording" 2010-03-30 21:04:17 -07:00
ZipFileCRO.cpp ZipUtilsRO rewrite based on Dalvik Zip rewrite 2010-05-12 05:07:48 -07:00
ZipFileRO.cpp ZipUtilsRO rewrite based on Dalvik Zip rewrite 2010-05-12 05:07:48 -07:00
ZipUtils.cpp fix FILE* version of ZipUtils::inflateToBuffer 2009-07-16 11:27:13 -07:00

Android Utility Function Library

If you need a feature that is native to Linux but not present on other
platforms, construct a platform-dependent implementation that shares
the Linux interface.  That way the actual device runs as "light" as
possible.

If that isn't feasible, create a system-independent interface and hide
the details.

The ultimate goal is *not* to create a super-duper platform abstraction
layer.  The goal is to provide an optimized solution for Linux with
reasonable implementations for other platforms.