I have just uploaded version 2.1
of the framework (it's in the first post). Here are the changes in detail.
Changelog for end-users:
- Work-around for ROMs which fail to update /data/system/packages.list. Caused installation problems (/data/xposed/modules.list not found).
- Indicate whether the bundled version is installed (version numbers are green or red).
- Performance improvement for the installer (drastically reduced loading time of framework tab).
- Don't use the package parser anymore, which crashed for apps on the SD card (not enough permissions).
- Hopefully fixed two problems with SharedPreferences (one of them caused a crash on some ROMs) by providing an own implementation.
- Includes binaries and busybox compiled for ARMv5 (also compatible with ARMv6).
Changelog for developers:
- handleLoadPackage() is called earlier now, basically as early as possible. This should not make a difference for your existing modules, but you can now be expect this handleLoadPackage() is called before handleInitPackageResources() in a new process. This is important if you need to do things in both that rely on each other.
- Added more information to the paramter for handleLoadPackage(): ApplicationInfo (null for system server), process name and isFirstApplication. The latter is false if the package has been loaded into an already existing process (e.g. when packages share the same process).
- For replacing Drawables, don't set a Drawable as replacement anymore as Drawable should not be shared. Instead, create an instance of XResources.DrawableLoader and return a new Drawable in the overridden method.
- Please use XSharedPreferences now, which also has a reload() method. This implementation should work on all ROMs and makes sure that there is no unwanted write access.
- You can now set xposedminversion to "2.1+" instead of "2.1*". Looks cleaner to me.