No description
It turns out this was not a problem in the resource code at all. Rather, the system process has a cache of pre-loaded attributes it uses to avoid continually reloading things as it needs them. Well it turns out this cache wasn't flushed after a package was uninstalled or a configuration changed, so you could re-install an app where you change its style resources so its theme now points to one that is inconsistent in the cache. This is mostly a problem for developers, where they continually install new versions of an app where resources have changed. This could possibly show up when updating an app on a normal phone, although the problem would eventually correct itself since this cache uses weak references. Anyway, the cache is now reworked to be flushed appropriately. This change also includes an update to aapt to be able to dump the contents of bags in resources. |
||
|---|---|---|
| adb | ||
| charger | ||
| cpio | ||
| debuggerd | ||
| fastboot | ||
| fastbootd | ||
| fs_mgr | ||
| gpttool | ||
| healthd | ||
| include | ||
| init | ||
| libcorkscrew | ||
| libctest | ||
| libcutils | ||
| libdiskconfig | ||
| libion | ||
| liblinenoise | ||
| liblog | ||
| libmincrypt | ||
| libnetutils | ||
| libnl_2 | ||
| libpixelflinger | ||
| libs/utils | ||
| libsparse | ||
| libsuspend | ||
| libsync | ||
| libsysutils | ||
| libusbhost | ||
| libzipfile | ||
| logcat | ||
| logwrapper | ||
| mkbootimg | ||
| netcfg | ||
| reboot | ||
| rootdir | ||
| run-as | ||
| sdcard | ||
| sh | ||
| toolbox | ||
| .gitignore | ||
| Android.mk | ||
| CleanSpec.mk | ||
| MODULE_LICENSE_APACHE2 | ||
| NOTICE | ||
| README | ||
| ThirdPartyProject.prop | ||
The system/ directory is intended for pieces of the world that are the core of the embedded linux platform at the heart of Android. These essential bits are required for basic booting, operation, and debugging. They should not depend on libraries outside of system/... (some of them do currently -- they need to be updated or changed) and they should not be required for the simulator build. The license for all these pieces should be clean (Apache2, BSD, or MIT). Currently system/bluetooth/... and system/extra/... have some pieces with GPL/LGPL licensed code. Assorted Issues: - pppd depends on libutils for logging - pppd depends on libcrypt/libcrypto - init, linker, debuggerd, toolbox, usbd depend on libcutils - should probably rename bionic to libc