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
/frameworks/multidex/library/src/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
/frameworks/multidex/library/src/android/support/multidex/MultiDexExtractor.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
/frameworks/multidex/library/src/android/support/multidex/MultiDexExtractor.java
|
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
/frameworks/multidex/library/src/android/support/multidex/MultiDexExtractor.java
|
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
/frameworks/multidex/library/src/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
/frameworks/multidex/library/src/android/support/multidex/MultiDexExtractor.java
|
cc63eda4e6defe6b0dd5dd3c8fa608cf6ff26011 |
|
03-Dec-2013 |
Maurice Chu <mochu@google.com> |
Add additional check for valid Zip file before multidex install Bug: 11895788 Change-Id: Id4f6e5b09be809eeb29367bebe78c03e49864cbf
/frameworks/multidex/library/src/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
/frameworks/multidex/library/src/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
/frameworks/multidex/library/src/android/support/multidex/MultiDexExtractor.java
|
a0c1a85f60a44ef1c0592821270c20e988c64370 |
|
28-Nov-2013 |
Maurice Chu <mochu@google.com> |
Make file lock before renaming zip file Change-Id: I548dd046f89d937f974cb5a925de70c7ecfad7a4
/frameworks/multidex/library/src/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
/frameworks/multidex/library/src/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
/frameworks/multidex/library/src/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
/frameworks/multidex/library/src/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
/frameworks/multidex/library/src/android/support/multidex/MultiDexExtractor.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
/frameworks/multidex/library/src/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
/frameworks/multidex/library/src/android/support/multidex/MultiDexExtractor.java
|
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
/frameworks/multidex/library/src/android/support/multidex/MultiDexExtractor.java
|