We preload classes for two reasons. Classes that are popular can be
shared and can increase the number of apps that can be run concurrently.
Classes that initialize slowly can be initialized at system boot time
by the zygote, decreasing the time to launch a specific app.
To select which classes to preload, I exercised Android's built-in apps
as well as these apps from Market: ESPN score center, Amazon, Flixster,
Twitter, Adobe Reader, Ebay Mobile, Facebook, Solitare (Ken Magic),
Barcode Reader, Google Earth and Square.
A cycle of launching ~460 (non unique) activities in sequence took 9m35s
with the previous preloaded-classes list. The update improves the launch
time of the same sequence to 9m27s: the marginal improvement over the
previous set of preloaded classes is negligible.
http://b/3004763
Change-Id: Ida511ae31eeff6d95d9cb6aacae68b9bb9dd2ebe
This also removes android.graphics.utils.BoundaryPatch
which was only used by the Browser for the unused drag
tracking (and by a demo app that I'm also removing).
Change-Id: I48253ae005ab11cb4c70d132bc1ea4f2692e2bd2
Unlike previous releases where the set of classes-to-be-preloaded
was generated on a first-generation device (G1 and MyTouch 3G), this
round I used a second-generation device, a Nexus One. As a consequence,
class loading is faster (win) and fewer classes hit the 1250ms threshold.
Instead of sharing classes based on load time alone, classes are now shared
based on the number of applications loading them.
Change-Id: I18f7aa3e7e6258818871b3968b515c06314371b3
http://b/2546002
This depends on a kernel patch that implements read(2)
in the ashmem driver.
Bug http://b/issue?id=2595601
Change-Id: Ie3b10aa471aada21812b35e63954c1b2f0a7b042
- frameworks and CoreTests modules now depend on bouncycastle
- update preloades classes for NativeBN package change
- moved CryptoTest to libcore
- updated api
Change-Id: I47363a463f074af205b5bd128cd98faab70ac849
(optionally) to use it. Added associated styles.
ListPopupWindow allows apps to present a popup window of options to
the user that will correctly dodge the IME if needed.
Change-Id: I509c6c45036856daab686a6edeb7a9de1e72eb0a
Merge commit 'e34d31e690cdfc529fe8e1e8f70e50c3719a4ccc' into kraken
* commit 'e34d31e690cdfc529fe8e1e8f70e50c3719a4ccc':
Updaing preloaded classes with removal of OpenSSLSocketImpl$Finalizer
Part of fixing b/2663512: "java.io.IOException: SSL shutdown failed.: Ok" shouldn't dump a stacktrace
Change-Id: Ic6070ab9abb58c08eb7c5d8648424f582bb48e1c
Merge commit 'f9e90378d50210298d1cec2b913653597cd62be4' into kraken
* commit 'f9e90378d50210298d1cec2b913653597cd62be4':
Move the public method HttpDateTime.parse() into AndroidHttpClient.
Also add ability for admins to hide themselves when not in use,
a facility for admins to not allow other admins to reset
their password, and debug dumping.
This is the framework part, moving classes around so the framework
no longer needs to link to android-common. Makes some APIs public,
others that didn't need to be public are private in the framework,
some small things are copied.
Remove this class, again, and change the webkit uses of it to use the
one in android-common. Remove class from preloaded-classes as well.
Change-Id: Ic0d4835e77180d299bc2c22b7c8780861b4781ee
The MMS code has been moved into the mms-common library.
Move SqliteWrapper (and make it hidden) into the database
directory because Telephony.java depends on it. Create a mmscommon
library similar to androidcommon for a number of files used both
by the telephony layer, by mms, and by myfaves.
Change-Id: I2e23e87c4961b87c42a4c8a63f812fa9e0e44dec
- Moved DomainNameChecker from android.net.http to android common, and renamed to DomainNameValidator.
- Added a simplified version of DNParser, which DomainNameValidator uses instead of X509Name in order to extract Subject Name from a certificate.
- Added unit tests for DomainNameChecker and DNParser.
There's a suspicious comment in DomainNameChecker saying something like "X509Certificate fails to parse a certificate when a subject alt name begins with '*'". I think we should fix it if it's really the case -- otherwise certificates with the wildcard wouldn't work. I'll see if it's true after submitting this patch.