• Home
  • History
  • Annotate
  • only in /frameworks/multidex/library/
History log of /frameworks/multidex/library/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
02290864de23cf5d941ba3b18ee5029150322107 28-Nov-2014 Yohann Roussel <yroussel@google.com> Workaround mkdirs concurency problems

Use only mkdir since our usage is a simple case.

Bug: https://code.google.com/p/android/issues/detail?id=79388

(cherry picked from commit 8c2abf7f471b061b737e700af711e9d5d6883b40)

Change-Id: I0ddb054e73f12a212b411a906676b1843079a505
rc/android/support/multidex/MultiDexExtractor.java
b98bb46334f2cead330588b9bc7c92361c54bb5b 28-Oct-2014 Xavier Ducrohet <xav@google.com> Enable building the multi-dex libs for shipping.

This is mostly a copy of the support libs' gradle files,
in order to generate a support library that will contain
the current public versions + the new version being built.

Change-Id: I4937073909206653bd0ffd128694161cf59445a9
uild.gradle
6624fbd355c4b3c874bec920aab662b2056a7278 20-Oct-2014 Yohann Roussel <yroussel@google.com> Package legacyMultidexInstallation.jpp

To allow automatic configuration when using Jill/Jack.
This is a temporary change untill Jack and Jill are fully
integrated into the SDK build tools.

(cherry picked from commit f50beca07827921e005ce6825bbc874a843f91e1)
Bug: 18112662

Change-Id: I8b9292b05c90d790edade62ac682dba35e7d3e96
ndroid.mk
egacyMultidexInstallation.jpp
esources/JACK-INF/legacyMultidexInstallation.jpp
bec7f278895a0f9cfd77fd86cb795b66ffe96149 22-Sep-2014 Yohann Roussel <yroussel@google.com> Provide default jack legacy configuration.

To help compilation with jack of applications using a multidex library.

(cherry picked from commit 2921acf84ac6114a6e600b7ab0237d835ef9e43f)
Bug: 18112662

Change-Id: I0f7535ba859859ec30fc6a07447f1075e7b4deb0
egacyMultidexInstallation.jpp
7dfb545d0f92125162ba2bacdfa1b96e88d06886 17-Sep-2014 Yohann Roussel <yroussel@google.com> Express a clearer status about supported versions.

By explaining the full story in README.txt.
By inlining API 11 constants so we can really compile the library against API 4.

(cherry picked from commit e99daea7a3aec5ffac13b4283685e8d2a5994ad9)
Bug: 18112662

Change-Id: I03a4d5f773bebbe09fcde04a340bdf8abfdbc068
ndroid.mk
EADME.txt
roject.properties
rc/android/support/multidex/MultiDexExtractor.java
abaf93c8f92de8b8d44173e78b0d7629b0324031 07-Oct-2014 Yohann Roussel <yroussel@google.com> Keep track of the version.

The version data is kept in a small resource file.

(cherry picked from commit 6d70d23facddf0e780cfb08a7f9af94da510bf96)
Bug: 18112662

Change-Id: I174145a4e93463b0106d45ae86e6dba1be8715e8
ndroid.mk
58f5bb5e72221b538fbcc55eb6c2a2499f8c2488 21-Jul-2014 Yohann Roussel <yroussel@google.com> Use a simulated code-cache for storing extracted files.

This should allow an automatic cleaning when updating to L without having to
check at each launch.

Bug: 10447095

(cherry picked from commit 590a07e63868f0a1da311ff22b4a9f35eb48a865)

Change-Id: I90b80c0c196b5da2b63bced30b2ba5e93ecb594a
rc/android/support/multidex/MultiDex.java
rc/android/support/multidex/MultiDexExtractor.java
d79604bd38c101b54e41745f85ddc2e04d978af2 08-Jul-2014 Yohann Roussel <yroussel@google.com> Clear old secondary dex dir when multidex becomes supported.

There may be a need for clearing those unused extracted files after an OTA
bringing Art L on the device.

Bug: 10447095

Change-Id: I80b9c0afa2bd8dfa0cf04e96fb04ba2527da0fe5
rc/android/support/multidex/MultiDex.java
rc/android/support/multidex/MultiDexExtractor.java
591acd99f16989233ff3e226546272bb60024559 26-Jun-2014 Yohann Roussel <yroussel@google.com> Merge "Deactivate the library if vm version is 2.1 or newer."
7b86f7e21c70ac06129c05ed137e585a308c6fd1 22-Apr-2014 Yohann Roussel <yroussel@google.com> Deactivate the library if vm version is 2.1 or newer.

It was decided that it would be the revision of multidex native support and
that it is the criterion that should be used to discriminate between VMs
capable of multidex and others.

Bug 14238145.

See bug 10447095 for discussions about the deactivation criterion.

Change-Id: I50922972d1d5b3019a111d5a1b4f2f18af9713ed
rc/android/support/multidex/MultiDex.java
est/src/android/support/multidex/MultiDexTest.java
est/src/android/util/Log.java
c741a211ee1c92e8796e3eb9a87007cf144038d1 18-Jun-2014 Jeff Davidson <jpd@google.com> Remove unnecessary versions from multidex's build.gradle.

frameworks/multidex/library does not stand alone as a gradle project
and should always be inheriting these values from the parent build.

Change-Id: I10eb64f2ad38d0bf278d5300e26a637c481b9b00
uild.gradle
ca1f9c2445450610cf79d10cc1846042d5f382d0 16-May-2014 Jeff Hamilton <jham@android.com> Update sdk and build tools version

Change-Id: I602f362ef9fb7a7eb88fea05052152b0b45a4c6e
uild.gradle
5bb7b0d3c370c0fb43ae5ce77d4ec328970db697 24-Apr-2014 Yohann Roussel <yroussel@google.com> Merge "Fix some javadoc in MultiDex."
1389a05bbd3abcfa37ff85851ec540896e0b07db 22-Apr-2014 Justin Morey <jmorey@google.com> Allow MultiDex support library to work in API 20 (KKWT)

The class loader is the same in KK (API 19) & KKWT (API 20), so only
a version bump was needed.

Change-Id: Ib5112e60c9a54ed042e9c71b075ecb5302c1b717
(cherry picked from commit b420940060dbce01a861760d5830416d0e9bb802)
rc/android/support/multidex/MultiDex.java
dd3cc22f2fbc8ea4dd5fa88978dc8d1ae5034bd9 22-Apr-2014 Yohann Roussel <yroussel@google.com> Fix some javadoc in MultiDex.

Change-Id: I0600b6f75005881c549150ea2e0b18800747bf73
rc/android/support/multidex/MultiDex.java
602c6ca8cae4718ba8ff9f65e53305d002479359 28-Mar-2014 Yohann Roussel <yroussel@google.com> Change update detection to reduce load time.

Reduces load time if extraction was already made. It appeared that
new ZipFile was really slow because it's preparing much things as
soon as it's instanciated.

The new criteria consist of the last modified time of the apk plus
the crc of the apk's central directory, last modified time should
be enough for nearly all modifications and the crc is here to try
to handle an OTA mixing with dates.

The transition from old criteria to new should be good: since there
will be no stored values they would be detected as a new installation.

Change-Id: Id390b77b03d794b8b7feb91eb0daae1126c6d691
classpath
rc/android/support/multidex/MultiDex.java
rc/android/support/multidex/MultiDexExtractor.java
rc/android/support/multidex/ZipUtil.java
est/.classpath
est/.project
est/src/android/support/multidex/ZipEntryReader.java
est/src/android/support/multidex/ZipUtilTest.java
944f06dfa36a84ef5514f1f1046c6a91036fb0c7 27-Feb-2014 Yohann Roussel <yroussel@google.com> Merge "Provide a default multidex capable Application."
1bb1ab007f6b9405227ea4ce07d2061e4dbb6fe0 23-Jan-2014 Yohann Roussel <yroussel@google.com> Provide a default multidex capable Application.

Multidex installation in Application.attachBaseContext()
requires only one call point to MultiDex.install() per Application
so let's provide a default multidex capable Application.

Change-Id: Icfa1993c4b3d7c5a7d1783d4ca6d5b9ea31adb8b
rc/android/support/multidex/MultiDexApplication.java
87fb57481c4a7204096482d5db0cecd8e880a9cc 31-Jan-2014 Justin Morey <jmorey@google.com> Disable gradle lint checks, so build will succeed

Change-Id: I5bd149acf7ad8efeadfd6ede018503a4dfba6e31
uild.gradle
782d200657395c38250df7a57b935bf522bc9acc 28-Jan-2014 Yohann Roussel <yroussel@google.com> Fix crc comparison in multidex installation.

The bug was caused by a comparison of Long instances instead of long
values and was leading to the library always detecting that the
secondary dex files needed a fresh exctraction.

bug 12776578

Change-Id: Ia7056a130cf6e99094e4f456b086e141c1255725
rc/android/support/multidex/MultiDexExtractor.java
08903bd236e03903b017ac3e5c66d9abe4b359b8 18-Jan-2014 Jeff Hamilton <jham@android.com> Fix gradle build

Change-Id: Idb9442556122d83f2277aceb79101f4f53e4c632
uild.gradle
994fa84b3af07700fd5dcd477c02a6bd824dde45 17-Jan-2014 Maurice Chu <mochu@google.com> Remove the check for source apk file size

The file deletion when finding that the source apk file size
was different than what was stored in SharedPreferences causes a race
condition when multiple processes are executing this code, where one
process could erase the secondary zip file while a different process had
already started to create the zip file. This check is unnecessary and
has been removed.

Also, changed the parameter for getting the SharedPreferences to
Context.MODE_MULTI_PROCESS, which forces a re-read of the key/value
pairs from the file.

This should also fix the original bug b/12550057.

Bug: 12594955
Bug: 12550057
Change-Id: I53f4bca0d03a5737d802509274520a78effcf228
ndroid.mk
rc/android/support/multidex/MultiDexExtractor.java
7e267a38525afac2a571da186e770a2b86a01846 16-Jan-2014 Maurice Chu <mochu@google.com> Check whether to extract secondary dex files based on apk size and CRC

This addresses an edge case where the secondary dex is not reloaded
when it should because of an OTA due to the modification time of the
PrebuiltGmsCore.apk in the system image is never different even though
PrebuiltGmsCore.apk may have changed in the OTA. This performs two
checks, the first is that the overall size of the apk is the same.
The second is to check that the number of dex files are the same, and
the CRC values of the dex file zip entries are the same.

Bug: 12550057
Change-Id: I526f6b88cfc7957840b0c35aaad0eab0cd776f7e
rc/android/support/multidex/MultiDex.java
rc/android/support/multidex/MultiDexExtractor.java
da74411a49a1b9d41f00aee6f6c03c668f62e599 08-Jan-2014 Justin Morey <jmorey@google.com> Get multidex library building under Gradle

Change-Id: Ic6f8689c68c7bc79bf831441008ae6d08d58e91d
uild.gradle
cc63eda4e6defe6b0dd5dd3c8fa608cf6ff26011 03-Dec-2013 Maurice Chu <mochu@google.com> Add additional check for valid Zip file before multidex install

Bug: 11895788
Change-Id: Id4f6e5b09be809eeb29367bebe78c03e49864cbf
rc/android/support/multidex/MultiDex.java
rc/android/support/multidex/MultiDexExtractor.java
88117c37e2c3f8601f295b74a3e804877afb78ee 28-Nov-2013 Yohann Roussel <yroussel@google.com> Add log to identify the source of the zip corruption.

This CL is to be reverted when debug is done.

Change-Id: I47f2464a4b32affe2d63f874a1df3f8f24e569d5
rc/android/support/multidex/MultiDex.java
rc/android/support/multidex/MultiDexExtractor.java
a159fd5dbd60171c9bb602f316ad8272419afe40 28-Nov-2013 Maurice Chu <mochu@google.com> Buffer the file output stream

Also, removed the file locking which had no effect.

Bug: 11895788
Change-Id: I8b520fff9496f289eba88690b3b583f9c43b932c
rc/android/support/multidex/MultiDexExtractor.java
a0c1a85f60a44ef1c0592821270c20e988c64370 28-Nov-2013 Maurice Chu <mochu@google.com> Make file lock before renaming zip file

Change-Id: I548dd046f89d937f974cb5a925de70c7ecfad7a4
rc/android/support/multidex/MultiDexExtractor.java
48cd040f1cf11d716f909f28ee237df6699a0f3b 28-Nov-2013 Maurice Chu <mochu@google.com> Remove computation of sha1 of zip file

This would spin up a lot of code to compute this and is
not something we want to do in every process that GMS Core
runs in. Return zip file length to have some data about the
file.

Change-Id: Ibb22c54a6d8ef33c690fd35f2b69c427449ef5d1
rc/android/support/multidex/MultiDexExtractor.java
f6d1f23926672c8dd61da515f8d1bcb37ef4292d 27-Nov-2013 Maurice Chu <mochu@google.com> Verify secondary dex zip file is a zip file and retry

Also, print out the SHA1 digest of the zip file for all
attempts at extracting the zip file.

Bug: 11895788
Change-Id: I4170c2362aa8370fd13bc7bed62f2e6eb3223768
rc/android/support/multidex/MultiDexExtractor.java
52eafa01b1e61e410cb4c5609eacee93c2a3e853 21-Nov-2013 Yohann Roussel <yroussel@google.com> Minor cleaning in the code and comment.

- Remove 2 unused method arguments.
- Fix a bad copy paste of a comment.
- Remove a useless if.

Change-Id: I1b88b91e38cbe3c024207113f1c4a7bdc052e514
rc/android/support/multidex/MultiDex.java
rc/android/support/multidex/MultiDexExtractor.java
1f8c349b6524aa39a10a570115ce0afb039bd06f 21-Nov-2013 Maurice Chu <mochu@google.com> Fix creation of zip file for multi-dex

Bug: 11791202
Change-Id: Ib8f97f11287a59db0ec119a1d55913aa8df3ce33
rc/android/support/multidex/MultiDexExtractor.java
66f379f774e06e650375750d18b1695ddb853371 15-Nov-2013 Maurice Chu <mochu@google.com> Update mZips field in classloader for GB

This enables mockito tests to also run.

Bug: 11709435
Change-Id: I9ebc5f5441a396c12eb8cde554d69a003fa6e7ad
rc/android/support/multidex/MultiDex.java
4be173048a01fb57f3c26b85fbff3c2bcf9a1267 13-Nov-2013 Yohann Roussel <yroussel@google.com> Merge "Control modTime of extracted files."
d9eda5550540306f2037e2db2aba2919fda90057 12-Nov-2013 Yohann Roussel <yroussel@google.com> Control modTime of extracted files.

And use it to clean more accuratly old extracted files.

Fix bug 11232823

Change-Id: I23678ae07a8df955276ece7b8c0cdddef907992b
rc/android/support/multidex/MultiDexExtractor.java
edf0717d4203bd7e9c9435019e3c256d564b4583 12-Nov-2013 Yohann Roussel <yroussel@google.com> Keep time extracted entry to avoid multiple dexopt.

Fix bug 11415819

Change-Id: I1a1300f430f0db7b587e2f29c273884ef80f7fbe
rc/android/support/multidex/MultiDexExtractor.java
aeef2844e435c6cb01741cbb169a593b4afebed0 08-Nov-2013 Yohann Roussel <yroussel@google.com> Restore SDK eclipse projects.

Change-Id: I0571445e464ab74ffcb4e972159a2a7cf805f613
classpath
project
ndroidManifest.xml
EADME.android
EADME.txt
roject.properties
es/.readme
rc/.readme
667f9a8a8155c41970a83be1414b57b5e37de336 16-Oct-2013 Maurice Chu <mochu@google.com> Initial move of code from frameworks/support/multidex to here

Also,
- Removed extraneous Eclipse-specific configuration files that are
unnecessary in the Android build tree
- Includes the patch to support API level 19 from
https://googleplex-android-review.git.corp.google.com/#/c/348129
- Checks for null and returns without patching the classloader when
getting the package manager or package name from the passed in Context
to MultiDex.install(...) since the Context object is probably a mock
context for testing.
- Moved the test runners to package com.android.test.runner, which seems
to be the standard place for all test runners.

Bug: 10674263
Change-Id: Idc894b360bd17db4acb50dd7daa2839ea8ea37e0
ndroid.mk
EADME.txt
rc/android/support/multidex/MultiDex.java
rc/android/support/multidex/MultiDexExtractor.java