History log of /libcore/dalvik/src/main/java/dalvik/system/BaseDexClassLoader.java
Revision Date Author Comments
f38cae4f22e46c49f5fba94e6e0579dedd2d8fd1 06-Jun-2015 Dmitriy Ivanov <dimitry@google.com> Fix lookup order when opening directly from APK

The order should be as follows:
1. Uncompressed native library dir (if any)
2. Directly from apk (<apk>!/lib/<abi>)
3. vendor/lib:/system/lib

Bug: http://b/21647354
Bug: http://b/21667767
Bug: http://b/21726698
Bug: http://b/8076853
Change-Id: I62cd76b7e4ae927d865d7d0ee81ceb91caa54e99
7694b783f48e2cc57928b61c84fd90311cb0c35a 18-Jul-2014 Dmitriy Ivanov <dimitry@google.com> Pass getDexPath to Runtime.nativeLoad

getDexPath is used by Runtime.nativeLoad to
open libraries directly from apk. Given that
libraries are not compressed and are page-aligned.

Bug: 8076853
Change-Id: I1aa2c039bb2a590ae72f256acc9ba5401c2c59b1
6c290d33a3585654db0500dabf5f937985e5b15d 13-Aug-2013 Brian Carlstrom <bdc@google.com> Move support files back with DexClassLoader and PathClassLoader

(cherry-picked from commit ca2c58ceaf2d35d30fe06b1676cc1436a24c4d30)

Bug: 9071417
Change-Id: Id97f12b4a1b1266b1bb21a323a8976f9df3dd0ad
b2525493e0a4d7019b0705fcb1001338737b4d86 13-Aug-2013 Brian Carlstrom <bdc@google.com> Share ClassLoader code

Bug: 9071417
Change-Id: Icdde3aace023d1d7509c932cdd71f203213b59d6
ca2c58ceaf2d35d30fe06b1676cc1436a24c4d30 13-Aug-2013 Brian Carlstrom <bdc@google.com> Share ClassLoader code

Bug: 9071417
Change-Id: Icdde3aace023d1d7509c932cdd71f203213b59d6
895bba44ff59d2225532a1fe9842c8b9a70a9f9a 13-May-2013 Brian Carlstrom <bdc@google.com> Move some files with dalvik dependencies to libdvm

Change-Id: I04498d8d8c4b065dbda8d7b30b8b77ce53e63a77
0cfd9bcaa70317a8c400c39b25ad42ba05c7531a 16-Jan-2013 Elliott Hughes <enh@google.com> Stop Facebook crashing with NoSuchFieldException.

The Facebook app uses reflection to access a private field of
BaseDexClassLoader, and won't start if we rename that field.

Bug: 7726934
Change-Id: I0b8febed1226655dbfeb5d1a539734b860558df4
652abda3efa231d431375677363f4a36327eeda7 20-Dec-2012 Elliott Hughes <enh@google.com> Support System.loadLibrary for libraries with transitive dependencies.

Bug: 7896159
Bug: http://code.google.com/p/android/issues/detail?id=34416
Change-Id: Id1225a353b52c50bb3eedfd48e92ec85dd60134b
f904678355f850a647f22e2689a836f895974fdf 04-Dec-2012 Elliott Hughes <enh@google.com> Support directories on the classpath, for resources.

This lets us run tests and legacy code that uses Class.getResource to
access resources, because we can put the resource directories on the
classpath.

I've also rewritten the toString implementation to show what path
we're _really_ using, rather than parroting back the original path we
were passed, because we won't actually look at all entries in the path,
so that can be very misleading. (It certainly confused the hell out of
me while working on this change.)

Change-Id: Iec4dca2244db9c9c793ac157e258fd61557a7a5d
75245fcfe3555e4dd06939b9bae366fd3e43b658 02-Apr-2012 Brian Carlstrom <bdc@google.com> Include library path information in BaseDexClassLoader for better error reporting in Runtime.loadLibrary

(cherry-pick of b6a576f43f1c23bb92493590a04bf9c72f092438.)

Change-Id: I6f34862327cf99d8c6f9a7e9aa3aeab47985969b
3bbe5318c343b1b7c945be717cc55b4ab15874f2 25-Jan-2012 Elliott Hughes <enh@google.com> Improve the BaseDexClassLoader detail message, and make ScopedLocalRef more unique_ptr-like.

(cherry-pick of 1c459db4ea31c1f284353bc71bfd2dbc97ca53d7.)

Conflicts:

include/ScopedLocalRef.h

Change-Id: Id01cb907406cc93f6b0f6ddaa8e7fb3714d18c53
ea52753a0f80fcd70acfe9150ecb854511ff38db 10-Feb-2011 Dan Bornstein <danfuzz@android.com> Refactor DexClassLoader and PathClassLoader.

This resulted in the creation of two new classes: DexPathList contains
most of the common functionality, namely managing the two path lists
(dex/resource files and native library directories) plus all the
salient initialization and lookup code. BaseDexClassLoader provides
the ClassLoader API, mostly by making calls to a contained DexPathList
instance. The two original classes just become trivial subclasses
which take different constructor args and make correspondingly
different super() calls in their respective constructors.

I took the opportunity to remove the ability for PathClassLoader to
take directories on the dex/resource list. This functionality hadn't
ever been used, at least not since well before 1.0.

Change-Id: I92ed300417431d0e0ac4c5ecf2f10d6a9b0691c7