40e9f2922cae76ffcbc521481e5be8e80e8744ef |
|
28-Nov-2012 |
Dianne Hackborn <hackbod@google.com> |
Quiet down a lot of logging. Also fix a little problem where the USER_STARTED broadcasts were not being sent as ordered broadcasts(!). Change-Id: I3aa3e0a9b3900967cdd2d115ee103371b0a50c41
/frameworks/base/core/java/android/app/ActivityThread.java
|
346acb123dd87396726941b484be6fdd5cd4ea44 |
|
16-Oct-2012 |
Christopher Tate <ctate@google.com> |
Sanity-check erroneous backup agent instantiations Two distinct changes: Fix a bug seen in the wild where a newly-launched application will be spuriously asked to instantiate a backup agent. What was happening there is that some Activity Manager state was being left stale in certain circumstances, and then in combination with app uninstall / install, there could be a case where uid reuse wound up looking like an app identity match. We now positively verify before instantiating the agent that the intended backup target package is uid-compatible with the app process that the instantiation was requested of. The incomplete bookkeeping in the Activity Manager has also been tightened up, and the Backup Manager is more aggressive about cleaning up pending operations pertaining to apps being uninstalled. Bug 5874010 Change-Id: Ic389f4a96c9dcd0ba6b3962b579084033d8ae9f8
/frameworks/base/core/java/android/app/ActivityThread.java
|
c428aae6429c3fd5e2037c3793af399d9f6e23bf |
|
04-Oct-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #7267494, issue #7212347 7267494 Calendar is not syncing Check for whether a content provider is dead before returning it. This is kind-of a band-aid, but probably the right thing to do; I'm just not sure exactly the full details of why this problem is happening. Hopefully this "fixes" it, though I don't have a way to repro to tell. 7212347 System power off dialog is only visible to user 0 Make it visible. Also turn on some battery debugging stuff and clean it up so we can just keep it. Change-Id: I5add25bf2a763c8dfe1df23bc5c753a9ea5d157a
/frameworks/base/core/java/android/app/ActivityThread.java
|
11d8481f10a12caef0cfd9be7fe86e61d953d58f |
|
02-Oct-2012 |
Dianne Hackborn <hackbod@google.com> |
Merge "Fix framework side of #7132432 com.android.vending:..." into jb-mr1-dev
|
689586d067c780c704b6ccef70adf5344b395fb6 |
|
02-Oct-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix framework side of #7132432 com.android.vending:... ...java.lang.IllegalStateException: Can not perform this action after onSaveInstanceStateat android.support.v4.app.FragmentManagerImpl .checkStateLoss(FragmentManager.java:1300) Framework fragment manager also needs to be told its state is not saved earlier. Change-Id: Ie5bb327fca6208f7eea6146a1b3223c61c9ecef6
/frameworks/base/core/java/android/app/ActivityThread.java
|
fe37f8f51d90fc4c6230e54dcd1270df5fcc6be3 |
|
30-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
Work on issue #6949468: android.dpi.cts.ConfigurationScreenLayoutTest... ...#testScreenLayout failures on JO This doesn't actually fix it; I have concluded that the test is broken (the platform is correctly reporting that this is a NOT LONG device because in portrait once you account for the status bar and system bar our size is 880dp high and 600dp wide, which is not enough for us to be in the LONG config). However while working on this I noticed that the code for computing the configuration of the external display was wrong. I have fixed that by putting this code for computing these parts of the configuration in a common place that both the window manager and external display code can use. Change-Id: Ic6a84b955e9ec345a87f725203a29e4712dac0ad
/frameworks/base/core/java/android/app/ActivityThread.java
|
b12e1354f25f04e9c9a71da76c6fca858b7d39d0 |
|
26-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
Maybe fix issue #7211766: bindService() to User u0 While u10 is... ...Forground Sometimes Doesn't Take The main change here is a one-liner in ActiveServices to check the uid when deciding whether to remove an item from mPendingServices. This could cause the problem being seen -- if the same service for two users is starting at the same time, the second one would blow away the pending start of the first one. Unfortunately I have had trouble reproducing the bug, so I don't know if this is actually fixing it. It's a bug, anyway. The reason so much has changed here is because I spread around logging and printing of the user ID associated with operations and objects to make it easier to debug these kind of multi-user things. Also includes some tweaks to the oom manager to allow more background processes (I have seen many times in logs where we thrash through processes because the LRU list is too short), plus to compensate an additional time-based metric for when to get rid of background processes, plus some new logic to try to help things like Chrome keep around their service processes. Change-Id: Icda77fb2a1dd349969e3ff2c8fff0f19b40b31d3
/frameworks/base/core/java/android/app/ActivityThread.java
|
98edc951712823dbf5db2b7e9c203a0e98fc616b |
|
25-Sep-2012 |
Amith Yamasani <yamasani@google.com> |
Load resources for the correct user For apps that are only installed on secondary users, the SystemUI is unable to see them by default. Added some methods to explicitly pass the userId of the user the resources are requested for by the StatusBarIcon Bug: 7214384 Also fix binding to remote views Bug: 7192802 Change-Id: I5d6c5f624aa37fb231f3467f9764c8d99077a91d
/frameworks/base/core/java/android/app/ActivityThread.java
|
7a7c6aa0c35d80145e163d9e637180d3be127441 |
|
25-Sep-2012 |
Jean-Baptiste Queru <jbq@google.com> |
Merge into jb-mr1-dev Change-Id: I821410e9ffcc7148139465c04ef335f0becc18c2
|
efd43bdb831351f1b0332ec3d55197e61e38bbb3 |
|
22-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Force activities to run on the second display for testing. This is a simple hack for testing and development purposes. It makes the framework place the main window of an activity on to a secondary display instead of on the default display. Set the "debug.second-display.pkg" to a substring of the package name of the activity that you want to have show up on the secondary display, such as "com.example.android.apis" Bug: 7183618 Change-Id: I0a9e7f27c8ff253253b9de57d4bc49f31d95a0e2
/frameworks/base/core/java/android/app/ActivityThread.java
|
6d51571835737c7502a2e111ee9dc2527ebad984 |
|
21-Sep-2012 |
Jeff Sharkey <jsharkey@android.com> |
Allow acquiring ContentProviders across users. Otherwise services like SystemUI will always open content://-style Uris as USER_OWNER. Surfaces through createPackageContextAsUser() which points all ContentResolver operations towards a given user. Start using in RemoteViews, so that Notifications correctly resolve image Uris to the sending user. Also add user support for "content" shell tool. Bug: 7202982 Change-Id: I8cb7fb8a812e825bb0b5833799dba87055ff8699
/frameworks/base/core/java/android/app/ActivityThread.java
|
e6f6380027d5c209eb17ec2567f00356ad32038a |
|
20-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
Merge "Fix issue #7196015: system_server deadlock during setup wizard" into jb-mr1-dev
|
b7faaf4c4029ea26f5f93958a51b7ae318feb50b |
|
20-Sep-2012 |
Geremy Condra <gcondra@google.com> |
Push dropbox logging into libcore. Change-Id: I74c0644c6938d28c20c42d88d995ffb56a71d703
/frameworks/base/core/java/android/app/ActivityThread.java
|
73c14161ec85629ebd6b5e24605a174305187e24 |
|
20-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #7196015: system_server deadlock during setup wizard Can't aquire the providers lock while holding the main activity thead lock, because we call into the activity manager with that lock held. Change-Id: If27326a2caa46480d0f1b98608be9e8a862febe0
/frameworks/base/core/java/android/app/ActivityThread.java
|
ad9b32115bf8c84a93ab30e6f30f8c46e86d7244 |
|
18-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
Try again to fix issue #6912004:tap on gmail notification sends me to home screen Add a new call to the activity manager to tell it when the activity is resumed, so it can mark its state as dirty then instead of when it first tries to create it. Also tweak things to update the LRU list for the upcoming activity at the point we start pausing the current activity, to avoid an inefficiency where we may decide to kill the process of the upcoming activity if it is at the end of the LRU list. Change-Id: Ia6dc8c34dc6d4b085a1efbe3a5d5f47721d55078
/frameworks/base/core/java/android/app/ActivityThread.java
|
ce24985ad636c38b6ee01ec9cdecfb038bfeaeb6 |
|
15-Sep-2012 |
Kenny Root <kroot@google.com> |
Remove AndroidKeyStore from API Change-Id: Ibe09d78e5a5b86604f01144f344525bff94c2dde
/frameworks/base/core/java/android/app/ActivityThread.java
|
69689a735695585603244a49386536bc39299227 |
|
12-Sep-2012 |
Geremy Condra <gcondra@google.com> |
DO NOT MERGE Push event logging down into libcore.EventLogger This changes the default behavior of the EventLogger from logging to the normal logs to logging to the event logs. Change-Id: I4338a1605928b82246a369adb3514bd31cd552e8 Conflicts: core/java/android/app/ActivityThread.java
/frameworks/base/core/java/android/app/ActivityThread.java
|
b049e212ab7fe8967893c202efcb30fecfdb82fb |
|
08-Sep-2012 |
Jeff Sharkey <jsharkey@android.com> |
Include user identifier in external storage paths. When building external storage paths, always include user in path to enable cross-user paths and aid debugging. Each Zygote process continues to only have access to the appropriate user-specific emulated storage through bind mounts. A second set of mounts continue supporting legacy /sdcard-style paths. For example, a process running as owner has these mount points: /storage/emulated_legacy /storage/emulated_legacy/Android/obb /storage/emulated/0 /storage/emulated/obb Since Environment is created before Zygote forks, we need to update its internal paths after each process launches. Bug: 7131382 Change-Id: I6f8c6971f2a8edfb415c14cb4ed05ff97e587a21
/frameworks/base/core/java/android/app/ActivityThread.java
|
d693dfa75b7a156898890014e7192a792314b757 |
|
10-Sep-2012 |
Siva Velusamy <vsiva@google.com> |
Report the user id of every app to ddms. This CL extends the HELO and APNM packets to include the user id of the application. This allows ddms users to differentiate between the same app running for multiple users. Bug 7110696. Change-Id: I490d0e3781b8fb9db65cf81188677a0955650511
/frameworks/base/core/java/android/app/ActivityThread.java
|
a3909a93958676d341424d574752bc7b3280d421 |
|
09-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Work around crash when display is removed. After a display is removed, there may be a brief time when a Context still exists that is bound to it. We need to provide metrics in this case. Bug: 7131637 Change-Id: I11b264a000653adbf0f3da399eaab66c4b40fb2a
/frameworks/base/core/java/android/app/ActivityThread.java
|
20e809870d8ac1e5b848f2daf51b2272ef89bdfc |
|
01-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
Add registering for explicit users. New API to register as an explicit user, which allows you to also select ALL to see broadcasts for all users. New BroadcastReceiver API to find out which user the broadcast was sent to. Use this in app widget service to handle per-user package broadcasts and boot completed broadcasts correctly. Change-Id: Ibbe28993bd4aa93900c79e412026c27863019eb8
/frameworks/base/core/java/android/app/ActivityThread.java
|
a492c3a7b2c18426fd0cb4d017eacbc368195dc5 |
|
24-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Initial draft of high-level multi-display APIs. This patch introduces the ability to create a Context that is bound to a Display. The context gets its configuration and metrics from that display and is able to provide a WindowManager that is bound to the display. To make it easier to use, we also add a new kind of Dialog called a Presentation. Presentation takes care of setting up the context as needed and watches for significant changes in the display configuration. If the display is removed, then the presentation simply dismisses itself. Change-Id: Idc54b4ec84b1ff91505cfb78910cf8cd09696d7d
/frameworks/base/core/java/android/app/ActivityThread.java
|
bd6e1500aedc5461e832f69e76341bff0e55fa2b |
|
28-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Add initial multi-display support. Split the DisplayManager into two parts. One part is bound to a Context and takes care of Display compatibility and caching Display objects on behalf of the Context. The other part is global and takes care of communicating with the DisplayManagerService, handling callbacks, and caching DisplayInfo objects on behalf of the process. Implemented support for enumerating Displays and getting callbacks when displays are added, removed or changed. Elaborated the roles of DisplayManagerService, DisplayAdapter, and DisplayDevice. We now support having multiple display adapters registered, each of which can register multiple display devices and configure them dynamically. Added an OverlayDisplayAdapter which is used to simulate secondary displays by means of overlay windows. Different configurations of overlays can be selected using a new setting in the Developer Settings panel. The overlays can be repositioned and resized by the user for convenience. At the moment, all displays are mirrors of display 0 and no display transformations are applied. This will be improved in future patches. Refactored the way that the window manager creates its threads. The OverlayDisplayAdapter needs to be able to use hardware acceleration so it must share the same UI thread as the Keyguard and window manager policy. We now handle this explicitly as part of starting up the system server. This puts us in a better position to consider how we might want to share (or not share) Loopers among components. Overlay displays are disabled when in safe mode or in only-core mode to reduce the number of dependencies started in these modes. Change-Id: Ic2a661d5448dde01b095ab150697cb6791d69bb5
/frameworks/base/core/java/android/app/ActivityThread.java
|
92d570529c72c00ab456521a5b0237f62a6abdf5 |
|
23-Aug-2012 |
Amith Yamasani <yamasani@google.com> |
Handle null cache directory data/android directory doesn't exist sometimes, and hence cache directory creation fails. Don't crash the process due to that. Change-Id: I22d7ed5df9c70f021a87029e89a13a11b4b0303b
/frameworks/base/core/java/android/app/ActivityThread.java
|
b4f56b5ea23325a492b61989a94a738be0fe9b8b |
|
22-Aug-2012 |
Dianne Hackborn <hackbod@android.com> |
am 8b97ee6d: am b0b4a704: Merge "ActivityThread: Avoid creating duplicate handlers and reuse mH" * commit '8b97ee6d8c26974a6fc9ce85c3d7a07ca1e9cac2': ActivityThread: Avoid creating duplicate handlers and reuse mH
|
672cfdc5b6194a416eae93f5ebe82cb624e2add6 |
|
20-Aug-2012 |
Kenny Root <kroot@google.com> |
Merge "Add AndroidKeyStore provider for KeyStore API" into jb-mr1-dev
|
e29df16cb57b69995df597e8a6d95d986c1c43fc |
|
10-Aug-2012 |
Kenny Root <kroot@google.com> |
Add AndroidKeyStore provider for KeyStore API This introduces a public API for the Android keystore that is accessible via java.security.KeyStore API. This allows programs to store PrivateKeyEntry and TrustedCertificateEntry items visible only to themselves. Future work should include: * Implement KeyStore.CallbackHandlerProtection parameter to allow the caller to request that the keystore daemon unlock itself via the system password input dialog. * Implement SecretKeyEntry once that support is in keystore daemon Change-Id: I382ffdf742d3f9f7647c5f5a429244a340b6bb0a
/frameworks/base/core/java/android/app/ActivityThread.java
|
98365d7663cbd82979a5700faf0050220b01084d |
|
20-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Refactor for multi-display support. Split WindowManagerImpl into two parts, the WindowManager interface implementation remains where it is but the global communications with the window manager are now handled by the WindowManagerGlobal class. This change greatly simplifies the challenge of having separate WindowManager instances for each Context. Removed WindowManagerImpl.getDefault(). This represents the bulk of this change. Most of the usages of this method were either to perform global functions (now handled by WindowManagerGlobal) or to obtain the default display (now handled by DisplayManager). Explicitly associate each new window with a display and make the Display object available to the View hierarchy. Add stubs for some new display manager API features. Start to split apart the concepts of display id and layer stack. since they operate at different layers of abstraction. While it's true that each logical display uniquely corresponds to a surface flinger layer stack, it is not necessarily the case that they must use the same ids. Added Display.getLayerStack() and started using it in places where it was relatively easy to do. Change-Id: I29ed909114dec86807c4d3a5059c3fa0358bea61
/frameworks/base/core/java/android/app/ActivityThread.java
|
848c2dc93b6795e171f3dd6f64ea0be65e2762ca |
|
20-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Stub out display manager service implementation. Reverting to the previous stub as the display adapter registration and the logical to physical mapping is not at all what we are going to need moving forward. Fixed up the service initialization order so that the display manager service has a context from the start. Change-Id: I717f2f1099c7a77180ef207c371ec8329258850a
/frameworks/base/core/java/android/app/ActivityThread.java
|
7335cfd9bb420c570c712ee081bb0927991227dd |
|
19-Aug-2012 |
Vairavan Srinivasan <vairav@codeaurora.org> |
ActivityThread: Avoid creating duplicate handlers and reuse mH sMainThreadHandler is used for notification of changes in SharedPreferences and refers to a new instance of Handler instead of the existing instance, mH, of the ActivityThread. Fix to reuse existing handlers associated with main looper. Change-Id: I794a5802a9eacdb188bd0619db5e70e3ae89a07d
/frameworks/base/core/java/android/app/ActivityThread.java
|
11de39a5cfa41e6518b7e9d171a0dc5888538c94 |
|
18-Aug-2012 |
Amith Yamasani <yamasani@google.com> |
Don't create cache directory for isolated processes They don't have access anyway This makes Chrome work in secondary users Change-Id: I4d30581bc6e807901e642893d6964854c0567fec
/frameworks/base/core/java/android/app/ActivityThread.java
|
f02b60aa4f367516f40cf3d60fffae0c6fe3e1b8 |
|
16-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Rename UserId to UserHandle. This is the start of turning this into a formal public API. Change-Id: I5786d2c320f1de41a06ed5d0f65adb68967287a0
/frameworks/base/core/java/android/app/ActivityThread.java
|
756220bd1912535840388a6743830d2e59ad4964 |
|
15-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Add API to create new contexts with custom configurations. This allows you to, say, make a Context whose configuration is set to a different density than the actual density of the device. The main API is Context.createConfigurationContext(). There is also a new API on ContextThemeWrapper that allows you to apply an override context before its resources are retrieved, which addresses some feature requests from developers to be able to customize the context their app is running in. Change-Id: I88364986660088521e24b567e2fda22fb7042819
/frameworks/base/core/java/android/app/ActivityThread.java
|
dde331cebd87982faded6818ad5f9927ff994c96 |
|
03-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
We can now (kind-of) change screen density on the fly. Preloaded drawables now have a density associated with them, so we can load the correct drawable if we are using a different density. Window manager now formally keeps track of the density for each screen, allowing it to be overridden like you can already do with size, and relies on this density to drive itself internally and the configurations it reports. There are a new set of Bitmap constructors where you provide a DisplayMetrics so they can be constructed with the correct density. (This will be for when you can have different windows in the same app running at different densities.) ActivityThread now watches for density changes, and pushes them to the DENSITY_DEVICE and Bitmap global density values for that process. A new am command allows you to change the density.
/frameworks/base/core/java/android/app/ActivityThread.java
|
908aecc3a63c5520d5b11da14a9383f885b7d126 |
|
01-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Start moving away from DisplayMetrics.DENSITY_DEVICE. This puts in most of the infrastructure needed to allow us to switch between different densities at run time. The main remaining uses of the global are to initialize the Bitmap object (not sure what to do about that since it doesn't have anything passed in the constructor to get this information from), and being able to load drawables if we need a different density than what was preloaded by zygote. Change-Id: Ifdbfd6b7a5c59e6aa22e63b95b78d96af3d96848
/frameworks/base/core/java/android/app/ActivityThread.java
|
d32460c5b7bea7b06e345397fdbaca58d9732dcf |
|
21-Jul-2012 |
Jeff Brown <jeffbrown@google.com> |
Refactor local window manager implementation. The objective of this refactoring is to remove the reliance on WindowManager wrapper objects for compatibility mode and for managing sub-windows. Removed the WindowManager.isHardwareAccelerated() method since it is never used. Change-Id: I4840a6353121859a5e0c07d5cc307a437c595d63
/frameworks/base/core/java/android/app/ActivityThread.java
|
5f48fca218a2a0f67d4f5290619a656419f26a43 |
|
30-May-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #6579824: Email crash observed after updating... ...device from JRN59D to JRN60 Deal correctly with multiprocess content providers that need to be loaded into a secondary process; wasn't correctly detecting the case where the IContentProvider returned by the activity manager is null. (installProvider used to be given the direct IContentProvider, now it gets the ContentProviderHolder and much check whether the provider inside is null.) Change-Id: I888622e275a459031ab849952941f39cf9c02ee0
/frameworks/base/core/java/android/app/ActivityThread.java
|
6ae8d1821822296df0606c9cd1c46708cc21cb58 |
|
23-May-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix (mostly) issue #5109947: Race condition between retrieving a... ...content provider and updating its oom adj This introduces the concept of an "unstable" reference on a content provider. When holding such a reference (and no normal stable ref), the content provider dying will not cause the client process to be killed. This is used in ContentResolver.query(), .openAssetFileDescriptor(), and .openTypedAssetFileDescriptor() to first access the provider with an unstable reference, and if at the point of calling into the provider we find it is dead then acquiring a new stable reference and doing the operation again. Thus if the provider process dies at any point until we get the result back, our own process will not be killed and we can safely retry the operation. Arguably there is still the potential for a race -- if somehow the provider is killed way late by the OOM killer after the query or open has returned -- but this should now be *extremely* unlikely. We also continue to have the issue with the other calls, but these are much less critical, and the same model can't be used there (we wouldn't want to execute two insert operations for example). The implementation of this required some significant changes to the underlying plumbing of content providers, now keeping track of the two different reference counts, and managing them appropriately. To facilitate this, the activity manager now has a formal connection object for a client reference on a content provider, which hands to the application when opening the provider. These changes have allowed a lot of the code to be cleaned up and subtle issues closed. For example, when a process is crashing, we now have a much better idea of the state of content provider clients (olding a stable ref, unstable ref, or waiting for it to launch), so that we can correctly handle each of these. The client side code is also a fair amount cleaner, though in the future there is more than should be done. In particular, the two ProviderClientRecord and ProviderRefCount classes should be combined into one, part of which is exposed to the ContentResolver internal API as a reference on a content provider with methods for updating reference counts and such. Some day we'll do that. Change-Id: I87b10d1b67573ab899e09ca428f1b556fd669c8c
/frameworks/base/core/java/android/app/ActivityThread.java
|
13b907353f18215b52b5ceda24bbf520d91d72a1 |
|
21-May-2012 |
Romain Guy <romainguy@google.com> |
Remove unused, obsolete debug code All these features have either been abandonned and left un-maintained for years or can be replaced by systrace. Change-Id: I42e4579a8078744047e5fe08a7a15254970b09bc
/frameworks/base/core/java/android/app/ActivityThread.java
|
03fcc333cf0fbbc4df1215649746d6360801efd8 |
|
15-May-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #6284404: ArrayIndexOutOfBoundsException in... ...FragmentManagerImpl.restoreAllState This was a bug related to the difference between the pre- and post-HC behavior of onSaveInstanceState(). Prior to HC, state was saved before calling onPause(). Starting with HC, it is saved between onPause() and onStop(). To maintain compatibility with existing applications, there is a check in ActivityThread for pre-HC to in that case emulate the behavior of old applications, still calling onSaveInstanceState() before onPause() but using the state later. One of the special cases we had to deal with in the old model of saving state before pausing was restarting an activity that is already paused. Consider, for example: you have two activities on screen, the one on top not fullscreen so you can see the one behind. The top activity is resumed, the behind activity is paused. In the pre-HC world, the behind activity would have already had its state saved. Now you rotate the screen, and we need to restart the activities. We need to destroy the behind activity and create a new instance, but the new instance has to end up in the paused state. To accompish this, we restart it with a flag saying that it should end up paused. For the pre-HC world, since it ends up paused, we need to make sure we still have its instance state kept around in case we need it because we can't regenerate it (since it is already paused). So that is what the changed code here is doing. It goes through the normal create/start/resume steps, but holds on to the current saved state so that it isn't lost when resume clears it, and then puts the activity back to paused and stuffs that old saved state back in to it. The problem is that this code was doing it for every application, even HC apps. So we end up in a bad state, when a HC app has its saved state sitting there as if it had been saved, even though it is only paused. Now if we go to restart the activity again, instead of asking it for a new saved state (as we should for a HC app as part of stopping it), we just re-use the existing saved state again. Now this wouldn't generally be a huge problem. Worst case, when we restart the activity yet again we are just instantiating it from the same saved state as we used last time, dropping whatever changes may have happened in-between. Who cares? All it has been doing is sitting there in the background, visible to the user, but not something they can interact with. If the activity made changes to its fragments, those changes will be lost, and we will restore it from the older state. However... if one of those fragements is a retained fragment, this will *not* appear in the saved state, but actually be retained across each activity instance. And now we have a problem: if the retained fragments are changed during this time, the next activity instance will be created from the most recent state for the retained fragments, but the older state for everyting else. If these are inconsistent... wham, dead app. To fix this, just don't keep the saved state for HC apps. Also includes a small optimization to ActivityStack to not push the home screen to the front redundantly. Change-Id: Ic3900b12940de25cdd7c5fb9a2a28fb1f4c6cd1a
/frameworks/base/core/java/android/app/ActivityThread.java
|
b61a02657b9e577179c934bbb5e199ce919c4642 |
|
15-May-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #6020164: Settings crashed on orientation change... ...while listening to TTS example This was a nice one. What was happening is that immediately upon being created, the activity was starting another activity in a different process. The second activity would never show, just immediately exit. However the original activity had time to pause and get into stopping itself before the second activity had come back to the activity manager to say it was going away, resulting in the activity manager asking the original activity to resume. At this point the activity manager's state is that the second activity is finishing and gone, and the original activity is resumed. However in the app process the original activity is still working on stopping itself, and it eventually completes this and tells the activity manager. The activity manager now changes its state to STOPPED, even though it is actually resumed and that is the last thing it told it to be, and it is now proceeding to set itself in that state. This would result later in the activity manager sending an unnecessary state change to the application. In the case of the screen here, we next do a rotation change, the activity manager thinks the current state is STOPPED not RESUMED, so it tells the application to relaunch the activity in a new config but not in the resumed state. Now it does the whole "start a new temporary activity" thing again, at which point it tries to pause the original activity again, and we have an unbalanced onPause() call to the app and it falls over. Change-Id: I38b680746f4c61ae30e7ce831e1de187adf60902
/frameworks/base/core/java/android/app/ActivityThread.java
|
652b6d1e591f6684cda4b93d4712920f287991b4 |
|
10-May-2012 |
Dianne Hackborn <hackbod@google.com> |
Add infrastructure for accessing "unstable" content providers. We have an API and some stuff that purports to this, but no real implementation yet. Change-Id: I93555440014a50fdf79fa3f65318d90fb82265b4
/frameworks/base/core/java/android/app/ActivityThread.java
|
92d7f9ff1c0c8a179ee935d86d3c94022980ead2 |
|
08-May-2012 |
Fabrice Di Meglio <fdimeglio@google.com> |
Merge "Fix bug #6408393 Character corruption is caused when locale is changed" into jb-dev
|
30ca5cd11a23f06f2f8eeaa587685450826f800f |
|
08-May-2012 |
Fabrice Di Meglio <fdimeglio@google.com> |
Fix bug #6408393 Character corruption is caused when locale is changed - free the TextLayoutCache on Locale change - also free TextLayoutCache when memory is low Change-Id: I39a37ac8ec3c292cfb1c0eea4bb41ff71897d089
/frameworks/base/core/java/android/app/ActivityThread.java
|
755c8bfbffe5134232217ef4c3998194b344ae17 |
|
08-May-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #6319312: Consecutive call to Activity's onCreate()/onResume()... ...without onPause() in between There was a bug in the handling of "always finish activities" where we would go through destroying activities while in the middle of updating the activity stack. This would result in the activity behind the non-full-screen activity being created and then immediately destroyed, which things were not expecting. Change-Id: Idaa89089f7b1af7eb747d7b8f9f394beeb2d23fa
/frameworks/base/core/java/android/app/ActivityThread.java
|
e1d330a071a4574040e6f1147800b4b2c8864043 |
|
02-May-2012 |
Jeff Sharkey <jsharkey@android.com> |
Set tmpdir to application cache directory. Otherwise File.createTempFile() uses /sdcard which most apps don't have write access to. Bug: 6347289 Change-Id: Ibde191a63e4dbb9b03437406f8c999f192bcfa21
/frameworks/base/core/java/android/app/ActivityThread.java
|
1ded0b1f6af65c2f95f8327f7f3df4cee1bf2346 |
|
26-Apr-2012 |
Dianne Hackborn <hackbod@google.com> |
Add traces for window manager and activity manager. Change-Id: I525d762db328e4c597da27b6b56d9a808e199756
/frameworks/base/core/java/android/app/ActivityThread.java
|
19f86e831ee0629b24385b0bb51d27ff91961dd2 |
|
24-Apr-2012 |
Romain Guy <romainguy@google.com> |
Invoke onTrimMemory with an EGL context Bug #6369600 Change-Id: I3ded47c3688ef2f2873495392c35e898357204da
/frameworks/base/core/java/android/app/ActivityThread.java
|
162bc0ea0d7862b92f18d0ce47310a85304205f7 |
|
09-Apr-2012 |
Dianne Hackborn <hackbod@google.com> |
Some small tweaks to improve memory management. We now allow processes that currently have stopping activities to be managed as if they were done stopping, so that memory trimming can be done before the process goes to the background. Hopefully this will reduce cases where the processes goes to the background and immediately gets killed, but wouldn't have had to be killed if it had a chance to trim its memory. Also change window memory trimming to always do the aggressive trimming when memory is critical, even if not on a low-end device. And tweak web view trimming to not trim for foreground UI events. Change-Id: I241b3152b52d09757bd14a202477cf69c9b78786
/frameworks/base/core/java/android/app/ActivityThread.java
|
d893a890c92e174c1a4bf0075b0acc4749a0eaa8 |
|
02-Apr-2012 |
Brian Carlstrom <bdc@google.com> |
Add support for native library paths with instrumentation (cherry picked from commit 8e658fd0415b3d6f44223c39a7e59a00cb0954aa) Change-Id: Idb1e031d5deeea9305af8aacc17ae2d0d064dfc6
/frameworks/base/core/java/android/app/ActivityThread.java
|
d4577c0c29f8e38a34d1aeac59803b37769af790 |
|
24-Mar-2012 |
Romain Guy <romainguy@google.com> |
Merge "Destroy the hardware renderer when ViewRootImpl's die is post-poned Bug #6109035"
|
a998dff5d49a423aaf7097aa8f96bf5bdc681d25 |
|
24-Mar-2012 |
Romain Guy <romainguy@google.com> |
Destroy the hardware renderer when ViewRootImpl's die is post-poned Bug #6109035 ViewRootImpl.die() can be invoked in such a way that doDie() will be executed later. On memory limited device, an eglTerminate() may happen before doDie() is executed which leads to unstable behaviors. This change makes sure the renderer is destroyed as soon as possible. Change-Id: I3322410cdd744b464951e2055aeade6069d1d673
/frameworks/base/core/java/android/app/ActivityThread.java
|
483f3b06ea84440a082e21b68ec2c2e54046f5a6 |
|
14-Mar-2012 |
Amith Yamasani <yamasani@google.com> |
Package restrictions per user Packages can be enabled/disabled per user. This requires maintaining stopped/launched states and enabled / disabled components and packages per user. Refactored pm.Settings and PackageSettingsBase to keep track of states per user. Migrated the stopped-packages.xml to users/<u>/package-restrictions.xml Changed intent resolution to handle individual user restrictions. Bunch of IPackageManager calls now have a userId argument. Make AppWidgetService handle removals of packages. Added some tests for pm.Settings and PackageManager. Change-Id: Ia83b529e1df88dbcb3bd55ebfc952a6e9b20e861
/frameworks/base/core/java/android/app/ActivityThread.java
|
a4972e951bf2bdb7afdafee95b3ab0c15b8bacae |
|
14-Mar-2012 |
Dianne Hackborn <hackbod@google.com> |
Add new "options" argument to all startActivity APIs. This will be used to allow new features to be requested... such as, say, a special kind of animation. Right now there are no options defined. Change-Id: I4eb6f27275cdd4bf186f6da316ab93a2372ad4b7
/frameworks/base/core/java/android/app/ActivityThread.java
|
92a8b22e7410e74e1cba1b856333116652af8a5c |
|
10-Mar-2012 |
Siva Velusamy <vsiva@google.com> |
ActivityManager: add option to allow OpenGL trace. This patch adds an option to enable tracing of OpenGL functions. OpenGL tracing can be enabled by passing "--opengl-trace" option to am start. This option requires either a device in debug mode, or that the application itself has debug permission set. Change-Id: I77788bfe97c9108943b1f947ce81afe8293d78a0
/frameworks/base/core/java/android/app/ActivityThread.java
|
eb00769e8983a02397db26a5413147a975b47c1f |
|
03-Mar-2012 |
Jeff Sharkey <jsharkey@android.com> |
Merge "Allow disk I/O while performing dump()."
|
e861b423790e5bf2d5a55b096065c6ad0541d5bb |
|
02-Mar-2012 |
Jeff Sharkey <jsharkey@android.com> |
Allow disk I/O while performing dump(). Add Closeable to ParcelFileDescriptor, and always close any incoming PFDs when dumping. Bug: 6106309 Change-Id: I25b465692d5e1da0a5980a307cb48a058bc2bca7
/frameworks/base/core/java/android/app/ActivityThread.java
|
b22d6c11efcb6b51315821c740b47b6deff30a12 |
|
02-Mar-2012 |
Teng-Hui Zhu <ztenghui@google.com> |
Merge "Allow webview to delete GL resource in a valid EGL context"
|
d9624138723c55a0ac2af58a2e78e98cd51eba27 |
|
02-Mar-2012 |
Teng-Hui Zhu <ztenghui@google.com> |
Allow webview to delete GL resource in a valid EGL context bug:6079959 Change-Id: Idee1031b0bcc4aeb498a18eb01970a8ed7efd285
/frameworks/base/core/java/android/app/ActivityThread.java
|
6bff62c2fd1733832a81f613495f4ead14045b81 |
|
29-Feb-2012 |
Jeff Sharkey <jsharkey@android.com> |
Wrap StrictMode changes in try/finally. Bug: 6091030 Change-Id: I2614f8bb30203e00953b1978bbcaf24d84d0397b
/frameworks/base/core/java/android/app/ActivityThread.java
|
7c5016787ec862445b1d4301787f46d52acfa88d |
|
28-Feb-2012 |
Jeff Sharkey <jsharkey@android.com> |
Suppress StrictMode in handleBindApplication(). Allow disk access during application and provider setup. This could block processing ordered broadcasts, but later processing would probably end up doing the same disk access. Bug: 6083825 Change-Id: I80f383063cedba2b099c78465134faa811e898d8
/frameworks/base/core/java/android/app/ActivityThread.java
|
a6f338ca5f0c8359d1952167858851dd025e47e2 |
|
25-Feb-2012 |
Jason Sams <rjsams@android.com> |
Do RS caching the same way HardwareRenderer does. Eliminates the need for an application context for caching. Change-Id: I4374738083b5eb4ce983d2cb5409428e3668c423
/frameworks/base/core/java/android/app/ActivityThread.java
|
a0c283eac33dd2da72235751bbfa4f2d9898d5ea |
|
09-Feb-2012 |
Dianne Hackborn <hackbod@google.com> |
Add new feature for running services in "isolated" sandbox processes. This reserves a range of uids (for each user) in which these processes run. These uids are not associated with an application, so they effectively run with no permissions. When a Service requests to run in such a process through android:isolatedProcess="true", each time it is brought up a new isolated process is started with its own unique uid. What we have so far gives us the basic infrastructure; more work remains to further lock down what these uids have access to. Change-Id: Ibfd27c75619cba61f528f46ede9113f98dc5f45b
/frameworks/base/core/java/android/app/ActivityThread.java
|
742a67127366c376fdf188ff99ba30b27d3bf90c |
|
04-May-2011 |
Amith Yamasani <yamasani@google.com> |
Multi-user - 1st major checkin Switching activity stacks Cache ContentProvider per user Long-press power to switch users (on phone) Added ServiceMap for separating services by user Launch PendingIntents on the correct user's uid Fix task switching from Recents list AppWidgetService is mostly working. Commands added to pm and am to allow creating and switching profiles. Change-Id: I15810e8cfbe50a04bd3323a7ef5a8ff4230870ed
/frameworks/base/core/java/android/app/ActivityThread.java
|
5e9120d4adfb07aeeadb0e0de1de2eb9ebbd80e0 |
|
30-Jan-2012 |
Romain Guy <romainguy@google.com> |
Always initialize AsyncTask on the main thread. Change-Id: I039e5d6cb7157a0c8873e0d29161daf1cbda5577
/frameworks/base/core/java/android/app/ActivityThread.java
|
99b46be97bd02d304024d692de12e5779ed34355 |
|
26-Jan-2012 |
Teng-Hui Zhu <ztenghui@google.com> |
Merge "Make sure WebView get notified before the EGL context destroyed."
|
a34eb91a208937e06f9aa49f7a583c9f25e658e1 |
|
25-Jan-2012 |
Teng-Hui Zhu <ztenghui@google.com> |
Make sure WebView get notified before the EGL context destroyed. bug:5639899 Change-Id: Id778cf3dac1d2f6d6b8014b7a911b51dc14fcc8a
/frameworks/base/core/java/android/app/ActivityThread.java
|
81e9276a479fd3a5ccc3129505c0fb018941934b |
|
10-Oct-2011 |
Dianne Hackborn <hackbod@google.com> |
Added JELLY_BEAN version name; update some targetSdkVersion docs. Change-Id: Ia38ff5b9ad2b63c2cf667260881222d9ff168052
/frameworks/base/core/java/android/app/ActivityThread.java
|
2a293b61cb0efbf24994d74ed980f58b820bb35a |
|
19-Jan-2012 |
Jeff Brown <jeffbrown@google.com> |
Clean up SQLite debugging code. Deleted a bunch of dead / useless code. Raised number of logged operations in dumpsys dbinfo to 20. Change-Id: I88344ff57a978f200c1f0172141d91e430caa1a9
/frameworks/base/core/java/android/app/ActivityThread.java
|
6754ba24f12a54b97b3ca1c5d29fc23c15980abe |
|
15-Dec-2011 |
Jeff Brown <jeffbrown@google.com> |
Add plumbing for dumping database info using dumpsys. Change-Id: I51b0364c3d3d41aa38a759fbce48e625fff1b2dd
/frameworks/base/core/java/android/app/ActivityThread.java
|
18cb28756caf02bf2b2f5e67c68451edaf719b47 |
|
15-Nov-2011 |
Marco Nelissen <marcone@google.com> |
Add ContentProvider.dump() This is similar to the existing dump() facility for services. ContentProviders can now implement dump() and that info will be shown when running "dumpsys activity provider" and when taking a bugreport. Change-Id: I33b3b132e3c4f920153355cc368eda2f725a715f
/frameworks/base/core/java/android/app/ActivityThread.java
|
1fbee79eb31011fa260d9fe088c165cc9171d98b |
|
30-Nov-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5679504: Device stuck and sudden reboot - Watchdog reset? Calls to get the display size no longer need to acquire the global window lock. Change-Id: I751ea6ed0e20f1f521783f4bd5a8f9c31cd43573
/frameworks/base/core/java/android/app/ActivityThread.java
|
ddaa9ac896b279ed6a7bb54262c27764619700c9 |
|
12-Nov-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix races when content providers are acquired and released. This change fixes race conditions that occur very regularly when content providers are accessed from multiple threads at the same time. When a content provider is not already in the application's cache, the application needs to ask the ActivityManager to obtain it. Meanwhile, another thread can come along and do the same thing. This can cause problems because the application attempts to install two copies of the provider and the reference counts and other bookkeeping can get muddled. Similarly, there are races between releasing the last reference to a content provider and acquiring the content provider. It's possible for one thread to snatch the content provider from the jaws of death. We need to handle this explicitly to ensure that the content provider does not accidentally get released right after it was acquired by the other thread. This change ensures that the reference count bookkeeping and provider map are maintained in parallel while holding the same lock. Previously because the lock was dropped and reacquired in the middle of acquisition and removal, it was possible for a content provider with a zero reference count to be returned to the application. Likewise, it was possible for a content provider with a non-zero reference count to be disposed! This change also performs compensatory actions when races are detected to ensure that the necessary invariants are maintained throughout. In particular, it ensures that the application drops a duplicate reference to a content provider when no longer needed. Another way to solve this problem would be to explicitly prevent the races from happening in the first place by maintaining a table of content providers that are in the process of being acquired. The first thread to attempt to acquire the provider would store a record. The next thread would find the record and block until the first thread was finished. I chose not to implement the code in that manner because we would still have needed to perform compensatory actions in the case where the same provider binder has multiple logical names. Also, it could cause deadlocks if the attempt to acquire a content provider were re-entrant for some bizarre reason. Bug: 5547357 Change-Id: I2ad39a8acc30aaf7ae5354decd0a0a41e9b9c3da
/frameworks/base/core/java/android/app/ActivityThread.java
|
a95826582773a194ed7fb66bc29c9b82fe9bb8d1 |
|
10-Nov-2011 |
Romain Guy <romainguy@google.com> |
Initialize egl_cache with an app writeable file Change-Id: I5dda234feab0fedd6e4179a80715ae20dee1c833
/frameworks/base/core/java/android/app/ActivityThread.java
|
d4d32c594f9a414821df147f503af5748d839c66 |
|
09-Nov-2011 |
Dianne Hackborn <hackbod@google.com> |
Don't crash if there is no connectivity service. Change-Id: I5f991896125fda22ff99b98a6aca244adbb17449
/frameworks/base/core/java/android/app/ActivityThread.java
|
0500b3cfda5192efc09d6d4344b0c6c785c0a815 |
|
01-Nov-2011 |
Dianne Hackborn <hackbod@google.com> |
Some optimizations. - Don't try to create a thumbnail bitmap on the client side. This wastes 64k, and isn't needed since we are doing screenshots. - Optimize View to put all of the callback pointers out of line. Added a couple new APIs so these don't need to be protected/public. - Lazily create ViewGroup's cache paint. - Change FrameworkPerf app to not use HW accel drawing, to give better comparison with GB. Change-Id: Iec56d02459820d74a4cc9c7ec9c1856563c82c7b
/frameworks/base/core/java/android/app/ActivityThread.java
|
58f42a59bda3bc912d0d2f81dc65a9d31d140eaa |
|
10-Oct-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5405788: Device continuously opening and closing... ...the "Complete action using" dialog When an application goes idle, it sends back to the activity manager the configuration it last used, to make sure the two don't get out of sync. Fix a bunch of edge cases here in dealing with that, and be sure to also send the current configuration when launching an activity so the client is always up-to-date when launching. Also a small fix to not show the upgrading dialog during first boot. Change-Id: I14ed366a87cd689d1c78787369e052422290ac6f
/frameworks/base/core/java/android/app/ActivityThread.java
|
836e262aa8e2f66548231ab11eb3b3e91d0e7901 |
|
05-Oct-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5348948: Third Party app "Byki Turkish" shows... ...a tiny dialog (works fine in GB and HC) I found two problems: - When first binding an application, we were not correctly computing the compat configuration. - When retrieving the display metrics to hand to Resources, we were using the one with compat applied. This is not right, because Resources will apply the compat itself, so in some cases the compat scaling was applied twice. Change-Id: I22c9cfed9e271290c1a7544fa3ffa54a2e65daf9
/frameworks/base/core/java/android/app/ActivityThread.java
|
9ecebbfbf768fd63e9a6c9a09c86d81c7737ee2d |
|
29-Sep-2011 |
Dianne Hackborn <hackbod@google.com> |
Add mechanism for Parcel to not allow FDs to be written to it. This is to help implement issue #5224703. Change-Id: I026a5890495537d15b57fe61227a640aac806d46
/frameworks/base/core/java/android/app/ActivityThread.java
|
3ad9d00cff03ebb6b24bb0d4e1fc2004cee0f5ea |
|
16-Sep-2011 |
Jeff Sharkey <jsharkey@android.com> |
Fix "am profile" when run on system_server. Split profiler controls into separate object, since system server doesn't have an AppBindData. Bug: 5327365 Change-Id: I613170cd94e0d4930dee049d0fe6c19124f13d65
/frameworks/base/core/java/android/app/ActivityThread.java
|
5d927c2d8e832fcfcb0154c8741f896001141ef4 |
|
02-Sep-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5150899: Call activity takes 15MB we never get back. Persistent process can no longer use hardware acclerated drawing when running on a low-memory device. Change-Id: I3110335617af1c98fcede9bf41f4a1d0c20d0e87
/frameworks/base/core/java/android/app/ActivityThread.java
|
ba24e4d8bbeb60e96d74f05e21691dad61ce497e |
|
01-Sep-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5229575: Youtube link shared through messaging is not... ...opening after selecting option "Youtube" as a luncher. Also: * Tweak window animations so that the wallpaper exist animations do not stop too early (causing the wallpaper to suddenly disappear). * Make sure no input is being processed while booting, to avoid accidentally doing things especially in the upgrade dialog. * Some other small cleanup. Change-Id: I40a6b53731991d4e31ac4502e3d85f0e47507481
/frameworks/base/core/java/android/app/ActivityThread.java
|
cfb9f2bca39772aecd072e2a30342a67b6319bbb |
|
24-Aug-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5192141: systemui asplodes after enough tapping on the windowlist button Change-Id: I5afb2d54b531d9eac9435660616579324f239812
/frameworks/base/core/java/android/app/ActivityThread.java
|
2a4c5acc27e546f11e578e9982d8c33deb6b88fb |
|
23-Aug-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix race in removeDeadProvider. Bug: 5202824 It's possible for removeDeadProvider to be called after the provider has already been removed from the provider map due to a race between binderDied and removing the provider. Deleted removeDeadProviderLocked; it was dead code. Change-Id: Iecdc68703225e7ac171746e63f1b3141c6f2ce4c
/frameworks/base/core/java/android/app/ActivityThread.java
|
62f20ecf492d2b29881bba307c79ff55e68760e6 |
|
16-Aug-2011 |
Dianne Hackborn <hackbod@google.com> |
Add new am option to profile the launching of an activity. Change-Id: Ie71a8043eafe41f53a0b3dbb5170276d87acbc9b
/frameworks/base/core/java/android/app/ActivityThread.java
|
b437e090ec03a2bab10bdfcb9484577a7f34e157 |
|
06-Aug-2011 |
Dianne Hackborn <hackbod@google.com> |
Improved memory use reporting. Change-Id: I38e53e6228bba92a142bafeedb5af8df4e4e5724
/frameworks/base/core/java/android/app/ActivityThread.java
|
6311d0a079702b29984c0d31937345be105e1a5e |
|
03-Aug-2011 |
Dianne Hackborn <hackbod@google.com> |
Clear the bitmap from the canvas in a lot of places. Change-Id: I6b2071ac7b348c473b9bdd1b972d095aebbb4fb3
/frameworks/base/core/java/android/app/ActivityThread.java
|
c68c913d357e2955d4bd7ca52829071e531c7825 |
|
29-Jul-2011 |
Dianne Hackborn <hackbod@google.com> |
Various work on out of memory managment. - Improve how we handle processes that have shown UI, to take care of more cases where we want to push them into the background LRU list. - New trim memory level for when an application that has done UI is no longer visible to the user. - Add APIs to get new trim memory callback. - Add a host of new bind flags to tweak how the system will adjust the OOM level of the target process. Change-Id: I23ba354112f411a9f8773a67426b4dff85fa2439
/frameworks/base/core/java/android/app/ActivityThread.java
|
65b345fa22b878e141b8fd8ece9c208df00fa40f |
|
28-Jul-2011 |
Romain Guy <romainguy@google.com> |
Reclaim more memory, more often. Yay. Change-Id: I04557ad575c307a55088549f48f0e9ad994b7275
/frameworks/base/core/java/android/app/ActivityThread.java
|
c09bd156b74a3e366beb26cf1eb15a2912e8e02d |
|
22-Jul-2011 |
Dianne Hackborn <hackbod@google.com> |
Merge "Fix bug where memory trim was not being delivered with correct level."
|
f0754f5ba7a45b517cffcb3c2c96f2a32aeac06d |
|
22-Jul-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix bug where memory trim was not being delivered with correct level. Also improve how we handle services, keeping track of whether they showed UI and if so putting them immediately on the LRU list. Change-Id: I816834668722fc67071863acdb4a7f427a982a08
/frameworks/base/core/java/android/app/ActivityThread.java
|
7eabe55db6b113f83c2cefcd06812648927de877 |
|
21-Jul-2011 |
Romain Guy <romainguy@google.com> |
Add looper profiling to adb shell am To profile the looper, run the following command: adb shell am profile looper start <process> <file> adb shell am profile looper stop <process> Change-Id: I781f156e473d7bdbb6d13aaffeeaae88bc01a69f
/frameworks/base/core/java/android/app/ActivityThread.java
|
6dd005b48138708762bfade0081d031a2a4a3822 |
|
18-Jul-2011 |
Dianne Hackborn <hackbod@google.com> |
I. Can. Not. Stand. ViewAncestor. It was done so we would have the name "ViewRoot" available for a public API. However, the name "ViewAncestor" just makes no sense. So instead, change it to ViewRootImpl. Change-Id: If9599ca67896f339f6fefa7d1dde121201171d97
/frameworks/base/core/java/android/app/ActivityThread.java
|
bdf7609867a3f886455c51dba91623a86cceb6e2 |
|
19-Jul-2011 |
Romain Guy <romainguy@google.com> |
Trim OpenGLRenderer's memory usage whenever possible Change-Id: I9225077184f374b1a43300add15cc1d5b6869d1c
/frameworks/base/core/java/android/app/ActivityThread.java
|
0e3328fbdd3845b0e2bec364e951498eaee6b079 |
|
17-Jul-2011 |
Dianne Hackborn <hackbod@google.com> |
Rework and fix "adb shell dumpsys meminfo" We now collect more detailed information splitting the maps into additional useful categories. Fixed some bugs in account, such as not correctly handling all of the current dalvik allocations. The activity manager now prints a final summary of all pss organized by the apps and the categories. Change-Id: Iafc5f27c998095812b1483c6803b8e0f0587aeae
/frameworks/base/core/java/android/app/ActivityThread.java
|
ce86ba86df61de8b34b226a4eb6c23ec33e866e0 |
|
14-Jul-2011 |
Dianne Hackborn <hackbod@google.com> |
Improve handling of low memory. Now classify background processes into a set of bins of how much memory they should try to clear. The last bin also involves destroying all activities in that process. Removed the old code for the simulator that is no longer needed (yay). The debugging features it had are now integrated into the regular oom adj code. Small fixes to load average service. Change-Id: Ic8df401714b188c73b50dbc8f8e6345b58f1f3a0
/frameworks/base/core/java/android/app/ActivityThread.java
|
10e89712863f5b91a2982dc1783fbdfe39c1485d |
|
09-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Eliminate single-process mode. Bug: 5010576 Change-Id: Id450dc83efed4897d1e4ff451530fed14457aace
/frameworks/base/core/java/android/app/ActivityThread.java
|
79ec80db70d788f35aa13346e4684ecbd401bd84 |
|
24-Jun-2011 |
Christopher Tate <ctate@google.com> |
Make full backup API available to apps New methods for full backup/restore have been added to BackupAgent (still hidden): onFullBackup() and onRestoreFile(). The former is the entry point for a full app backup to adb/socket/etc: the app then writes all of its files, entire, to the output. During restore, the latter new callback is invoked, once for each file being restored. The full backup/restore interface does not use the previously-defined BackupDataInput / BackupDataOutput classes, because those classes provide an API designed for incremental key/value data structuring. Instead, a new FullBackupDataOutput class has been introduced, through which we restrict apps' abilities to write data during a full backup operation to *only* writing entire on-disk files via a new BackupAgent method called fullBackupFile(). "FullBackupAgent" exists now solely as a concrete shell class that can be instantiated in the case of apps that do not have their own BackupAgent implementations. Along with the API change, responsibility for backing up the .apk file and OBB container has been moved into the framework rather than have the application side of the transaction do it. Change-Id: I12849b06b1a6e4c44d080587c1e9828a52b70dae
/frameworks/base/core/java/android/app/ActivityThread.java
|
f741e679c496f7345304a6543f01d7048e31d1a7 |
|
10-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of e2aa0490 to master Change-Id: Id0448a1598fc93aca0652b29253e02586e35a067
|
5fd2169eabd77e6bfafaf456e58051a3bafb2bca |
|
07-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Work on issue #4518815: Compatibility mode introduces compatibility regression... ...for Market App iRunner There were a lot of serious issues with how we updated (or often didn't update) the display and resource state when switching compatibility mode in conjunction with restarting and updating application components. This addresses everything I could find. Unfortunately it does *not* fix this particular app. I am starting to think this is just an issue in the app. This change does fix a number of other problems I could repro, such as switching the compatibility mode of an IME. Also a few changes here and there to get rid of $#*&^!! debug logs. Change-Id: Ib15572eac9ec93b4b9966ddcbbc830ce9dec1317
/frameworks/base/core/java/android/app/ActivityThread.java
|
3c43ced84184f19b8bb72f42894e37c97fdecab2 |
|
04-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of d247ee41 to master Change-Id: I49bd932f5019ce0608e2661d5cb7f24b6122dcba
|
2515db74fe2e75018f618591fabe23fda8362bf3 |
|
03-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
am 3a80c504: am 8b9a2b6c: am e6676351: Work around OpenFeint bug. * commit '3a80c50485809fe72d6de83dacad494c5e84ed24': Work around OpenFeint bug.
|
50469db07167e3a837e10f215baa4eacb1319604 |
|
03-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
am 7322e557: am a4cfcf10: am 75d6b3c2: Merge "Fix issue #4502672: Wrong xml resources used for homescreen widgets." into honeycomb-mr2 * commit '7322e557cfe42da42779625d69ced2db74a9df90': Fix issue #4502672: Wrong xml resources used for homescreen widgets.
|
b46ed7636be9341b6ce0b158b3d86f34a437e6da |
|
03-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Add new Fragment API for explicitly saving/restoring state. Also fix issue #4519821: Blank screen displayed on tapping "Battery Use" option in the settings We weren't correctly doing the full Activity resume code when coming back from delivering a new Intent or result. And fix a fragment problem where we still weren't correctly restoring the state of list views. (I think this was from a bad manual-merge from master.) Change-Id: If79dc7e998155c39ab8c04781f6c73a82238a9ef
/frameworks/base/core/java/android/app/ActivityThread.java
|
546d64f56d0f930070289e26021f97638601e388 |
|
02-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of 5c2e4d20 to master Change-Id: Iadbee872468ceafb54c5877046c91f6052f3c953
|
e66763516a9c27c192adaba417616371a1c3c9bf |
|
02-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Work around OpenFeint bug. Change-Id: Ib8320e50bb63fc56dc0118d5c8e9e328dbd3fcb1
/frameworks/base/core/java/android/app/ActivityThread.java
|
75a99709accef8cf221fd436d646727e7c8dd1f1 |
|
19-May-2011 |
Christopher Tate <ctate@google.com> |
Restore from a previous full backup's tarfile Usage: adb restore [tarfilename] Restores app data [and installs the apps if necessary from the backup file] captured in a previous invocation of 'adb backup'. The user must explicitly acknowledge the action on-device before it is allowed to proceed; this prevents any "invisible" pushes of content from the host to the device. Known issues: * The settings databases and wallpaper are saved/restored, but lots of other system state is not yet captured in the full backup. This means that for practical purposes this is usable for 3rd party apps at present but not for full-system cloning/imaging. Change-Id: I0c748b645845e7c9178e30bf142857861a64efd3
/frameworks/base/core/java/android/app/ActivityThread.java
|
2f0b17573d4324832f7a20402a3d2b5920bc4866 |
|
01-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #4502672: Wrong xml resources used for homescreen widgets. There was a race in the system process between applying the initial configuration and executing code in higher-level system services like the app widget service that relies on the config. For some reason it starting showing up more after my code changes; it should now be completely fixed. Also fix the activity starting window to run in compatibility mode if its application is going to be in compatibility mode. And some various cleanup and small fixes. Change-Id: I0566933bf1bbb4259c1d99a60c0a3c19af1542e5
/frameworks/base/core/java/android/app/ActivityThread.java
|
df6e980e3f63eb0f6f9eb437fa925d5009cd9c44 |
|
26-May-2011 |
Dianne Hackborn <hackbod@google.com> |
Add new supports-screens attributes for declaring the compatible screens. Change-Id: I40d57e4354e48accc1027c9f90916ea73eb5190d android:requiresSmallestWidthDp provides the smallest supported width. android:compatibleWidthLimitDp provides the largest compatible width.
/frameworks/base/core/java/android/app/ActivityThread.java
|
9a84983a9fd9959671e102045eaf185b83291269 |
|
08-Apr-2011 |
Dianne Hackborn <hackbod@google.com> |
DO NOT MERGE. Integrate from master: Improve activity manager debug dumps. Activity manager now does all dump requests into apps asynchronously, so it can nicely timeout if there is an app problem. Also lots of general cleanup of the am dump output. Change-Id: I99447b87f77a701af52aeca984d93dfe931f065d
/frameworks/base/core/java/android/app/ActivityThread.java
|
4a627c71ff53a4fca1f961f4b1dcc0461df18a06 |
|
01-Apr-2011 |
Christopher Tate <ctate@google.com> |
Full local backup infrastructure This is the basic infrastructure for pulling a full(*) backup of the device's data over an adb(**) connection to the local device. The basic process consists of these interacting pieces: 1. The framework's BackupManagerService, which coordinates the collection of app data and routing to the destination. 2. A new framework-provided BackupAgent implementation called FullBackupAgent, which is instantiated in the target applications' processes in turn, and knows how to emit a datastream that contains all of the app's saved data files. 3. A new shell-level program called "bu" that is used to bridge from adb to the framework's Backup Manager. 4. adb itself, which now knows how to use 'bu' to kick off a backup operation and pull the resulting data stream to the desktop host. 5. A system-provided application that verifies with the user that an attempted backup/restore operation is in fact expected and to be allowed. The full agent implementation is not used during normal operation of the delta-based app-customized remote backup process. Instead it's used during user-confirmed *full* backup of applications and all their data to a local destination, e.g. via the adb connection. The output format is 'tar'. This makes it very easy for the end user to examine the resulting dataset, e.g. for purpose of extracting files for debug purposes; as well as making it easy to contemplate adding things like a direct gzip stage to the data pipeline during backup/restore. It also makes it convenient to construct and maintain synthetic backup datasets for testing purposes. Within the tar format, certain artificial conventions are used. All files are stored within top-level directories according to their semantic origin: apps/pkgname/a/ : Application .apk file itself apps/pkgname/obb/: The application's associated .obb containers apps/pkgname/f/ : The subtree rooted at the getFilesDir() location apps/pkgname/db/ : The subtree rooted at the getDatabasePath() parent apps/pkgname/sp/ : The subtree rooted at the getSharedPrefsFile() parent apps/pkgname/r/ : Files stored relative to the root of the app's file tree apps/pkgname/c/ : Reserved for the app's getCacheDir() tree; not stored. For each package, the first entry in the tar stream is a file called "_manifest", nominally rooted at apps/pkgname. This file contains some metadata about the package whose data is stored in the archive. The contents of shared storage can optionally be included in the tar stream. It is placed in the synthetic location: shared/... uid/gid are ignored; app uids are assigned at install time, and the app's data is handled from within its own execution environment, so will automatically have the app's correct uid. Forward-locked .apk files are never backed up. System-partition .apk files are not backed up unless they have been overridden by a post-factory upgrade, in which case the current .apk *is* backed up -- i.e. the .apk that matches the on-disk data. The manifest preceding each application's portion of the tar stream provides version numbers and signature blocks for version checking, as well as an indication of whether the restore logic should expect to install the .apk before extracting the data. System packages can designate their own full backup agents. This is to manage things like the settings provider which (a) cannot be shut down on the fly in order to do a clean snapshot of their file trees, and (b) manage data that is not only irrelevant but actively hostile to non-identical devices -- CDMA telephony settings would seriously mess up a GSM device if emplaced there blind, for example. When a full backup or restore is initiated from adb, the system will present a confirmation UI that the user must explicitly respond to within a short [~ 30 seconds] timeout. This is to avoid the possibility of malicious desktop-side software secretly grabbing a copy of all the user's data for nefarious purposes. (*) The backup is not strictly a full mirror. In particular, the settings database is not cloned; it is handled the same way that it is in cloud backup/restore. This is because some settings are actively destructive if cloned onto a different (or especially a different-model) device: telephony settings and AndroidID are good examples of this. (**) On the framework side it doesn't care that it's adb; it just sends the tar stream to a file descriptor. This can easily be retargeted around whatever transport we might decide to use in the future. KNOWN ISSUES: * the security UI is desperately ugly; no proper designs have yet been done for it * restore is not yet implemented * shared storage backup is not yet implemented * symlinks aren't yet handled, though some infrastructure for dealing with them has been put in place. Change-Id: Ia8347611e23b398af36ea22c36dff0a276b1ce91
/frameworks/base/core/java/android/app/ActivityThread.java
|
aa9d84c37e05f696ec158dac98ce38cf41e18314 |
|
10-May-2011 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of 05be6d6f to master Change-Id: Ic6a6c5bb300f6f1d43f9ed550b284282b4f16212
|
e2515eebf42c763c0a2d9f873a153711778cfc17 |
|
28-Apr-2011 |
Dianne Hackborn <hackbod@google.com> |
Better compat mode part one: start scaling windows. First step of improving app screen size compatibility mode. When running in compat mode, an application's windows are scaled up on the screen rather than being small with 1:1 pixels. Currently we scale the application to fill the entire screen, so don't use an even pixel scaling. Though this may have some negative impact on the appearance (it looks okay to me), it has a big benefit of allowing us to now treat these apps as normal full-screens apps and do the normal transition animations as you move in and out and around in them. This introduces fun stuff in the input system to take care of modifying pointer coordinates to account for the app window surface scaling. The input dispatcher is told about the scale that is being applied to each window and, when there is one, adjusts pointer events appropriately as they are being sent to the transport. Also modified is CompatibilityInfo, which has been greatly simplified to not be so insane and incomprehendible. It is now simple -- when constructed it determines if the given app is compatible with the current screen size and density, and that is that. There are new APIs on ActivityManagerService to put applications that we would traditionally consider compatible with larger screens in compatibility mode. This is the start of a facility to have a UI affordance for a user to switch apps in and out of compatibility. To test switching of modes, there is a new variation of the "am" command to do this: am screen-compat [on|off] [package] This mode switching has the fundamentals of restarting activities when it is changed, though the state still needs to be persisted and the overall mode switch cleaned up. For the few small apps I have tested, things mostly seem to be working well. I know of one problem with the text selection handles being drawn at the wrong position because at some point the window offset is being scaled incorrectly. There are probably other similar issues around the interaction between two windows because the different window coordinate spaces are done in a hacky way instead of being formally integrated into the window manager layout process. Change-Id: Ie038e3746b448135117bd860859d74e360938557
/frameworks/base/core/java/android/app/ActivityThread.java
|
c6cc0f8c19d9eccf408a443fa2bf668af261dcd0 |
|
12-Apr-2011 |
Joe Onorato <joeo@google.com> |
Rename ViewRoot to ViewAncestor. ViewRoot is about to be a new public class for poking at ViewAncestor. Change-Id: Ie95d707c6d8bbb48f78d093d7b2667851812a7d5
/frameworks/base/core/java/android/app/ActivityThread.java
|
0c5001d776d56bae02a5cc2663286a125d99bc5e |
|
13-Apr-2011 |
Dianne Hackborn <hackbod@google.com> |
Add APIs to remove tasks. You can remove sub-tasks inside of a task, or an entire task. When removing an entire task, you can have its process killed as well. When the process is killed, any running services will get an onTaskRemoved() callback for them to do cleanup before their process is killed (and the service possibly restarted). Or they can set a new android:stopWithTask attribute to just have the service automatically (cleanly) stopped at this point. Change-Id: I1891bc2da006fa53b99c52f9040f1145650e6808
/frameworks/base/core/java/android/app/ActivityThread.java
|
43a17654cf4bfe7f1ec22bd8b7b32daccdf27c09 |
|
07-Apr-2011 |
Joe Onorato <joeo@google.com> |
Remove the deprecated things from Config.java. These haven't been working since before 1.0. Change-Id: Ic2e8fa68797ea9d486f4117f3d82c98233cdab1e
/frameworks/base/core/java/android/app/ActivityThread.java
|
e17aeb31030cfeed339a39a107912ad5e9178390 |
|
08-Apr-2011 |
Dianne Hackborn <hackbod@google.com> |
Improve activity manager debug dumps. Activity manager now does all dump requests into apps asynchronously, so it can nicely timeout if there is an app problem. Also lots of general cleanup of the am dump output. Change-Id: Id0dbccffb217315aeb85c964e379833e6aa3f5af
/frameworks/base/core/java/android/app/ActivityThread.java
|
9c1e23baf5bfbebd1aebbd6d9a18c225325567ce |
|
24-Mar-2011 |
Chet Haase <chet@google.com> |
Add logging of graphics acceleration info to bugreports Change-Id: I9fa4cda6ccf92df9d1c644ccdc0e7274a30106e0
/frameworks/base/core/java/android/app/ActivityThread.java
|
ed7e00729f78d11107f0e9a7f0559dfe4be6b560 |
|
24-Mar-2011 |
Brian Carlstrom <bdc@google.com> |
SamplingProfilerIntegration and SamplingProfiler improvements (3/3) Summary: frameworks/base - fix profiling to collect data beyond the first snapshot - avoid many small files, accumulate data over process lifetime libcore: - add support for VM specific sampling, trying to cut down overhead - added support for converting snapshot files to text format - fixed race in profiler when stopping dalvik - added VMStack.setThreadStackTrace interface for filling a stack trace into an existing StackTraceElement[] Details: frameworks/base Changed snapshots from text to binary hprof format (bumping version to 3) Changed from one file per snapshot to one file per process lifetime. Restart profiling after snapshot. core/java/com/android/internal/os/SamplingProfilerIntegration.java Add quick test in maybeSnapshot to avoid doing work when the SamplingProfilerIntegration is disabled. Make maybeSnapshot private. Remove unneeded memory allocation in handleLowMemory. core/java/android/app/ActivityThread.java libcore Added ThreadSampler interface. This allows VM specific thread sampling optimizations. The portable version continues to use Thread.getStackTrace(). dalvik/src/main/java/dalvik/system/profiler/ThreadSampler.java dalvik/src/main/java/dalvik/system/profiler/PortableThreadSampler.java dalvik/src/main/java/dalvik/system/profiler/SamplingProfiler.java Add VMStack.setThreadStackTrace and use in new DalvikThreadSampler to avoid allocating a full stack trace when only a limited depth is desired. dalvik/src/main/java/dalvik/system/profiler/DalvikThreadSampler.java dalvik/src/main/java/dalvik/system/VMStack.java Refactored BinaryHprof.readMagic out of BinaryHprofReader so it can be used by HprofBinaryToAscii converter to probing file types. Added magic number constant to be shared between readMagic and BinaryHprofWriter. dalvik/src/main/java/dalvik/system/profiler/BinaryHprof.java dalvik/src/main/java/dalvik/system/profiler/BinaryHprofReader.java dalvik/src/main/java/dalvik/system/profiler/BinaryHprofWriter.java dalvik/src/main/java/dalvik/system/profiler/HprofBinaryToAscii.java Removed unneeded HprofWriter interface. Changed to simpler static interface to write HprofData to binary and text formats. dalvik/src/main/java/dalvik/system/profiler/HprofWriter.java dalvik/src/main/java/dalvik/system/profiler/AsciiHprofWriter.java dalvik/src/main/java/dalvik/system/profiler/BinaryHprofWriter.java dalvik/src/test/java/dalvik/system/profiler/SamplingProfilerTest.java Added support for reading snapshot files created by SamplingProfilerIntegration by stripping the text header to allow easier conversion to the text format. dalvik/src/main/java/dalvik/system/profiler/HprofBinaryToAscii.java Fixed race between Sampler and SamplingProfiler.stop. SamplingProfiler.stop previously simply called the Sampler's TimerTask.cancel method, but this does not wait for a currently running Sampler to finish. The TimerTask documentation says the only reliable way to do this is to have the run() cancel itself, so that is what is now done, with new code to ensure that SamplingProfiler.stop does not return until the Sampler has been terminated. dalvik/src/main/java/dalvik/system/profiler/SamplingProfiler.java dalvik Refactored VMStack_getThreadStackTrace to create helper getTraceBuf used to implement new VMStack_setThreadStackTrace. The new version interface fills an existing StackTraceElement[], avoid allocating unnecessary StackTraceElements. vm/native/dalvik_system_VMStack.c Refactor dvmGetStackTraceRaw to create dvmSetStackTraceRaw which fills in an existing, potentially smaller, StackTraceElement[]. vm/Exception.c vm/Exception.h Change stack depths to be unsigned to avoid signed/unsigned comparison warnings. vm/Ddm.c vm/Exception.c vm/Exception.h Change-Id: I4b90255e4e1d33ea2b569321c4968b0f3369f251
/frameworks/base/core/java/android/app/ActivityThread.java
|
d630f105e8bc0021541aacb4dc6498a49048ecea |
|
18-Mar-2011 |
Joe Onorato <joeo@google.com> |
AsyncTask now uses the poll executor for apps up through HC MR1 and the serialized one after that. Change-Id: I47d135ace5f8e78e4fa44ac9d1bf7abeeb9d3ba0
/frameworks/base/core/java/android/app/ActivityThread.java
|
9aa597e68b3fb30b079d627e1fcdea766e98ad26 |
|
04-Mar-2011 |
Svetoslav Ganov <svetoslavganov@google.com> |
Propagating core settings to the system process. bug:3511123 Now the core settins are stored in the ActivityThread instad in the AppBindData of the currently bound app. Also the settings are pushed to the system process on init. Change-Id: I100bb7dc80d0d4548def22c328427bbef1694eb7
/frameworks/base/core/java/android/app/ActivityThread.java
|
54d068ec6af0ee6d261a135400efe6816c6f5ffe |
|
02-Mar-2011 |
Svetoslav Ganov <svetoslavganov@google.com> |
Add system wide management of core settings bug:3505060 Since we want to have some settings that are used very frequently by many applications (long-press timeout is one example) these should be managed efficiently to reduce lookups from different processes because in the case of a cache miss a disk I/O is performed. Now the system manages such core settings and propagates them to the application processes. Change-Id: Ie793211baf8770f2181ac8ba9d7c2609dfaa32a7
/frameworks/base/core/java/android/app/ActivityThread.java
|
98d169eacd65e6278bb8eab354f0278065771e9f |
|
25-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
am 5d9d03a0: Maybe fix issue #3093599: java.lang.IndexOutOfBoundsException... * commit '5d9d03a0234faa3cffd11502f973057045cafe82': Maybe fix issue #3093599: java.lang.IndexOutOfBoundsException...
|
5d9d03a0234faa3cffd11502f973057045cafe82 |
|
24-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
Maybe fix issue #3093599: java.lang.IndexOutOfBoundsException... ...Invalid index 0, size is 0 at android.app.ActivityThread.performPauseActivity(ActivityThread.java:2326) It looks like if an arrow key is dispatched between the time the list view is told its data set has changed and it does the resulting layout pass, we could try to move the position to a now invalid index. This may prevent that from happening. Also put in a better error message if saving state of a fragment whose target is no longer in the fragment manager. And fix a bug in PackageManager where we could return a null from queryIntentActivities(). And add a new API to find out whether a fragment is being removed, to help fix issue #3306021: NPE at android.app.AlertDialog.getDefaultDialogTheme(AlertDialog.java) Next, for new HC apps we can delay committing data to storage until the activity is stopped. Finally, use the new multi-threaded AyncTask executor in a few places, so we don't have worked blocked by long-running tasks from the application. Change-Id: I27b2aafedf2e1bf3a2316309889613fa539760f3
/frameworks/base/core/java/android/app/ActivityThread.java
|
db4e32fe68a50ea8ba75b434a88c1adeffb6018c |
|
22-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
am f36af164: Merge "Whoops, actually exclude pre-HC apps." into honeycomb * commit 'f36af16479e252bec168ed181885ec21d9df46f5': Whoops, actually exclude pre-HC apps.
|
842e04b221048668e468cc06f09c9d18a39cbd3f |
|
22-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
Whoops, actually exclude pre-HC apps. Change-Id: I7266b3a622ae65f350bdb2a0eb6557b481a14365
/frameworks/base/core/java/android/app/ActivityThread.java
|
8a0f17560080077b972c97bf9d5b68961f148fe3 |
|
22-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
am 5503d803: Merge "Fix issue #3377999: Activities need to be stopped when sleeping" into honeycomb * commit '5503d803ecee63d417128d3849717b59b971fc08': Fix issue #3377999: Activities need to be stopped when sleeping
|
4eba96bb314d8ff773ea33d6cb3179f25751ecce |
|
21-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #3377999: Activities need to be stopped when sleeping This is a band-aid over the existing kludgy stopping mechanism where the semantics of stop are different in the activity manager than in the clients. This change is intended to be as unobtrusive as possible, only impacting the sleep case. I have a different change that completely reworks how we stop activities to simply this all a lot by unifying the semantics between the server and client. However, it is too late in HC for such an extensive change. Later I'll revert this one and put in the better solution. Change-Id: Id77f2db1ec83469cdd888acb8fbc4679daa7766e
/frameworks/base/core/java/android/app/ActivityThread.java
|
11ce84fcaadb7051735dd50a35f6e6c234fbe480 |
|
21-Jan-2011 |
Nick Pelly <npelly@google.com> |
resolved conflicts for merge of 97ac2935 to honeycomb-plus-aosp Change-Id: I5b510a3598adf17b738ecfe6bf8fbc47f7111350
|
7204528e71145e34bedd6cfb13110eb872d8a968 |
|
21-Jan-2011 |
Brad Fitzpatrick <bradfitz@android.com> |
am 9358bd39: Merge "Fixes for StrictMode instance count checking." into honeycomb * commit '9358bd39dc8829ef8413294da70d44cd928ca878': Fixes for StrictMode instance count checking.
|
5f8b5c191cae77f536ee64f0b625e4a7f8596787 |
|
21-Jan-2011 |
Brad Fitzpatrick <bradfitz@android.com> |
Fixes for StrictMode instance count checking. Misc stuff found after looking at the first day of data, Jesse's review, and comments from Dianne about tracking Activity counts better. Change-Id: Ifee1ef8f59f41061d4aac8c02765627dbf3cd8e4
/frameworks/base/core/java/android/app/ActivityThread.java
|
1426d6bdd889821fd83e355d54da989ca3370940 |
|
20-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
am b26a651b: Merge "Hook up large heap API." into honeycomb * commit 'b26a651b47b5fc90a6685477aff5b76fdd1787f1': Hook up large heap API.
|
de39851592679a545b8b6fb749507ccc7ec407f9 |
|
19-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
Hook up large heap API. Change-Id: I215644f8de326fe3d4fa582447885b0aa01f72d3
/frameworks/base/core/java/android/app/ActivityThread.java
|
ce3224cda51f946871daa1e11e3976e25c59e6fa |
|
17-Jan-2011 |
Jeff Hamilton <jham@android.com> |
Javadoc updates for NFC. Change-Id: Ibd91829979576297599fbcc9eb8054924af1d527
/frameworks/base/core/java/android/app/ActivityThread.java
|
64e306430570fcfb35a1b14e1b333ad114b23829 |
|
16-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
am c237bb27: Merge "Add manifest API to request a large heap." into honeycomb * commit 'c237bb2776facbfd3325ef23865fd7f6ced67f17': Add manifest API to request a large heap.
|
3b81bc18bb661c02ad8074c39dab16644c1e65d0 |
|
15-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
Add manifest API to request a large heap. You can now do android:largeHeap="true" on an application. Doesn't yet do anything, waiting for Dalvik API. Also tweak package parsing so that the SDK API level is set in the configuration, allowing manifest resource value selection based on that. Change-Id: I6e035f9702a97b055416743b88f83a22ba4a9584
/frameworks/base/core/java/android/app/ActivityThread.java
|
93ec68e6a9ef0c6031db506dbd035a7ade6350ad |
|
14-Jan-2011 |
Jeff Hamilton <jham@android.com> |
resolved conflicts for merge of 06bb3aef to honeycomb-plus-aosp Change-Id: Ia7071ca07d917bd79e7697f4b0c0640ebb5f6a6f
|
52d3203ef69d4babbc4dd030a15c08c0b8d1d226 |
|
08-Jan-2011 |
Jeff Hamilton <jham@android.com> |
Add dispatching overrides for foreground apps. Apps can register to override the default dispatching but only when they're in the foreground. Change-Id: I8e9a9254d3f79f097fb3c8c677d806043574ba4d
/frameworks/base/core/java/android/app/ActivityThread.java
|
bfddc0fe77f9b943bd35ab525c50f5ce9d7390f4 |
|
14-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
Work around issue #3241701: crash in ActivityThread.handleWindowVisibility Change-Id: I9d5df3605f3d216e651e0a294409f82dea3968ad
/frameworks/base/core/java/android/app/ActivityThread.java
|
30d7189067524000c738c188c4ff91f84f474d25 |
|
11-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #3274841: Orientation change problem with a paused activity Plus a bunch of debug output improvements. And some new Intent helpers for dealing with restarting an app. Change-Id: I50ec56bca6a86c562156b13fe8a6fdf68038a12e
/frameworks/base/core/java/android/app/ActivityThread.java
|
fb3806d68d51d336cba0ace697b1bae3e699a890 |
|
09-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #3271486: SetupWizward NullPointerException in andriod.app.ActivityThread.performStopActivityInner Change-Id: Ifce73b7fc48fedb4767d759f70c98fcdee510f36
/frameworks/base/core/java/android/app/ActivityThread.java
|
e2b0480f5e698b7d771b1c1348cc0bff2a72548d |
|
09-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix not saving state when restarting an activity. Change-Id: I4c9e93e9523c9c62e3a15e6e4587ffad06280545
/frameworks/base/core/java/android/app/ActivityThread.java
|
0aae2d4e0075fd699cf40b26dca0eb2c3b3e37d2 |
|
08-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
Rework activity lifecycle so onSaveInstanceState() is after onPause(). The goal is to fix a bunch of fragment-related bugs caused by various things trying to do fragment transactions after onPause()... which currently throws an exception, since this is after the activity's state has been saved so the new fragment state can be lost. The basic change is relatively simple -- we now consider processes hosting paused or stopping activities to be unkillable, and the client code now does the onSaveInstanceState() as part of stopping the activity. For compatibility, if an app's targetSdkVersion is < HONEYCOMB, the client side will still call onSaveInstanceState() prior to onPause() and just hold on to that state until it needs to report it in once being stopped. Also included here is a change to generate thumbnails by taking screenshots. The code for generating thumbnails by re-rendering the view hierarchy is thus removed. Change-Id: Iac1191646bd3cadbfe65779297795f22edf7e74a
/frameworks/base/core/java/android/app/ActivityThread.java
|
30c9bd89556137157b2f686637ece961454ccabe |
|
02-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
Implement issue #3189564: New API to create an activity. Change-Id: I7aef83324d653130eb3b2a148ba089d7347e6ba6
/frameworks/base/core/java/android/app/ActivityThread.java
|
00e40171892c73295b6e7221ed83126731230b98 |
|
29-Nov-2010 |
Vasu Nori <vnori@google.com> |
Revert "Merge "print certain rows from downloads.db when bugreports are taken"" This reverts commit 34878787f06c07b5cf14879254ef9abccffa631b, reversing changes made to 5a2755d0c9220b6bc52cb1262927e27dc3dce6c1.
/frameworks/base/core/java/android/app/ActivityThread.java
|
624002b0d5b5bd812ca457fdfde0ead2b908eb7a |
|
22-Nov-2010 |
Vasu Nori <vnori@google.com> |
print certain rows from downloads.db when bugreports are taken when downloads fail/get stuck, we need to look at the database state for those downloads. and when the users report such problems, it is a royal pain not to have that info and most users don't seem to bother sending database dumps because it is a bit of work. so lets just dump info about downloads that failed or downloads from GSF (OTAs, for example) helps debugging. there is STOP ship comment to not dump data once HC is released. Change-Id: Id1254982fd82b4c55f1816a2491f00966840f024
/frameworks/base/core/java/android/app/ActivityThread.java
|
434203a277cd2f237a71508a3d5a7d1602126cd5 |
|
12-Oct-2010 |
Robert Greenwalt <rgreenwalt@google.com> |
Notify all VMs when proxy changes. bug:2700664 Change-Id: I74cc6e0bd6e66847bf18f524ce851e3e9d2c4e87
/frameworks/base/core/java/android/app/ActivityThread.java
|
4d9e6d2bc21292619c48818d313112a2ec65ad52 |
|
15-Nov-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Disable CloseGuard early. (it defaults to spammy otherwise) We already selectively enable it later when desired. Change-Id: Ic428f13a57a2b4340ce343e73c32413b64fcd1af
/frameworks/base/core/java/android/app/ActivityThread.java
|
390dae1a8b8c2da6a24f3246c8c277645bcc75dc |
|
10-Nov-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Move ApplicationPackageManager out of ContextImpl.java Change-Id: I706bce3fc4a5c7e6ee351d677899a01ac222960c
/frameworks/base/core/java/android/app/ActivityThread.java
|
03595d01188d88c169e8c9dd51b357fd545e69cc |
|
02-Nov-2010 |
Robert Greenwalt <rgreenwalt@google.com> |
Tell each VM to flush their DNS cache. bug:3095357 Change-Id: I93de24e3e5a7d8b94d55f4facfffc863a2b8c202
/frameworks/base/core/java/android/app/ActivityThread.java
|
bfb191998eba2ebc710ff9eb59480b10909ba4c9 |
|
30-Oct-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
StrictMode: annotate violations with the Broadcast Intent's action, if any. Change-Id: If36ab776bb95054a109b5475c6be041c75c7e0af
/frameworks/base/core/java/android/app/ActivityThread.java
|
b6e18412af35bf724298796eed65ef1fbbe1925e |
|
28-Oct-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Make network usage on the main thread fatal (Honeycomb+) For apps targetting Honeycomb SDK or above, make network usage on the main thread (aka event thread, Looper thread, UI thread) be fatal. If an app is targetting a previous SDK version, they're grandfathered into the older (lack of) rules. Bug: 786847 Change-Id: Ia4ae77b8369567ee526c96b930d523bc722b0bc9
/frameworks/base/core/java/android/app/ActivityThread.java
|
e829fef63957a23b61cdb01bb692a17a041ff2dc |
|
27-Oct-2010 |
Dianne Hackborn <hackbod@google.com> |
Add facility for broadcasts receives to do work asynchronously. You can now call goAsync() and move your work to a background thread. If you are that kind of receiver. You weirdo. Also allows SharedPreferences.apply() to be committed off the main thread after returning from onReceive(). Change-Id: I27f975910e28f230ababcaeb551eb9a78ec4fc76
/frameworks/base/core/java/android/app/ActivityThread.java
|
e71df8fa166eb2de7fcdecc14d958d3e3b796531 |
|
28-Oct-2010 |
Dianne Hackborn <hackbod@google.com> |
am 96abb48d: am aa93bcd6: Fix issue #3138926: App\'s preferences can be lost after onPause()
|
aa93bcd62482719c146a411008e1eac94135b6a4 |
|
27-Oct-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #3138926: App's preferences can be lost after onPause() Change-Id: Icea3d37fab5e47c89c5cbc0adff7bbec898fa93e
/frameworks/base/core/java/android/app/ActivityThread.java
|
fb3cffeb35368da22f99b85d45039c4e6e471c06 |
|
26-Oct-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #3130426: Finsky crash in switching from window carousel Need to note that we no longer have saved state before delivering results or new intents to an activity. Also do some work on loaders to prevent apps from making fragment changes as a result of receiving loader data. This makes apps consistent crash in a case that they would previously sometimes crash (if they got the loader data after onPause). Change-Id: I46e9e46d0aa05d9d7d6a275a2a488a18a20a5747
/frameworks/base/core/java/android/app/ActivityThread.java
|
c9d5b31f84f5c8b5db690491031369556ed7fee9 |
|
06-Oct-2010 |
Brian Carlstrom <bdc@google.com> |
Fix instance count to be long Change-Id: I88b17c4ff17a04db6e931f9b25885bdf05d4453c
/frameworks/base/core/java/android/app/ActivityThread.java
|
c21550a8d1dfc9e5359fe994cb48049a0bd4c82c |
|
06-Oct-2010 |
Brian Carlstrom <bdc@google.com> |
Adding android.os.Debug.countInstancesOfClass - Debug.countInstancesOfClass is just a wrapper on dalvik.system.VMDebug.countInstancesOfClass to avoid code from depending on the dalvik classes directly - Existing usages of VMDebug.countInstancesOfClass in ActivityThread and ViewDebug are converted to the new Debug.countInstancesOfClass - Existing use of OpenSSLSocketImpl.instanceCount, which is being removed, is converted to Debug.countInstancesOfClass(OpenSSLSocketImpl.class) Bug: 3015791 Change-Id: Iefa781292d5b82a63bad7254c913a09deb3b7888
/frameworks/base/core/java/android/app/ActivityThread.java
|
dc71b9e4d67327065a992924a021cad4bc100fa2 |
|
01-Oct-2010 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of 6a3eddb4 to master Change-Id: I1ca1d100274d4a733ef2bf58b0d5d7217b4f858e
|
cef65eeb0315c3118bf8860d6f723cb49ff6bc52 |
|
01-Oct-2010 |
Dianne Hackborn <hackbod@google.com> |
Rub in a little 'ol log-b-gone. Mmmmmm... great fresh scent! Change-Id: I050e70b31b5d4a9c6731f15a4b51a3620a33a78d
/frameworks/base/core/java/android/app/ActivityThread.java
|
cca1f0e3476edd09cdd81b075a6b7780a2959b46 |
|
27-Sep-2010 |
Dianne Hackborn <hackbod@google.com> |
Allow all apps to call ContentResolver.getType(). I can't find the bug number for this, but it is needed for some things we are doing where the app building an intent may not have access to the URI in the data field. This is for HC, but doing in GB to avoid introducing integration issues. Change-Id: I0cac971854198b18775d2a73deb80f23431bfbe2
/frameworks/base/core/java/android/app/ActivityThread.java
|
8313fc7e94e46e5cc09f457a15a771a325b9f74f |
|
27-Sep-2010 |
Dianne Hackborn <hackbod@google.com> |
Allow all apps to call ContentResolver.getType(). I can't find the bug number for this, but it is needed for some things we are doing where the app building an intent may not have access to the URI in the data field. This is for HC, but doing in GB to avoid introducing integration issues. Change-Id: I0cac971854198b18775d2a73deb80f23431bfbe2
/frameworks/base/core/java/android/app/ActivityThread.java
|
846df9f5171c4ef32f038cca651b6b9c0b6c3083 |
|
24-Sep-2010 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of 8952a448 to master Change-Id: I9c752a5d10ae8d8e5ead1243b6abd4795204fc0b
|
287952c35e148811c106bc0f5036eabf20f71562 |
|
23-Sep-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #3022508: Crash during media scan Don't kill processes for excessive wake lock use, even if they are in the background, as long as they have running services. Also fix some problems with this, such as not noting the kill in battery stats. And add killing of processes for cpu usage as well, along with some optimizations to computing CPU usage. And fix BatteryWaster to be better behaving for testing these cases. Add new "monitor" command to am to watch as the activity manager does stuff (so we can catch things at the point of ANR). Finally some miscellaneous debug output for the stuff here, as well as in progress debugging of an ANR. Change-Id: Ib32f55ca50fb7486b4be4eb5e695f8f60c882cd1
/frameworks/base/core/java/android/app/ActivityThread.java
|
625ac271f80777668f832a344486a6fcdc06d0ae |
|
18-Sep-2010 |
Dianne Hackborn <hackbod@google.com> |
Work on fragments in layouts. - Change semantics if IDs associated with these fragments, to work correctly when placed in a container. If the container has an ID or you have supplied a tag, the fragment's ID is optional. - To do this, there is a new LayoutInflater API that allows code creating views to access the parent container that view will be in. - Fix issues with state management around these fragments. Now correctly retains state when switching to a layout that doesn't include the fragment. Also: - Add new simple list layouts for items that want to show an activated state. - Add new Activity.dump() that can be invoked with adb shell dumpsys; the default implementation dumps fragment state. Change-Id: I192f35e3ea8c53fbd26cf909095f2a994abfc1b6
/frameworks/base/core/java/android/app/ActivityThread.java
|
3c7131ffca4695f80dd2921faebedfbf2eece0d8 |
|
21-Sep-2010 |
Vasu Nori <vnori@google.com> |
bring database code in master for 'adb bugreport' in sync with ginger Change-Id: Ibe9eb07db363b483a07645e9644d75db51132808
/frameworks/base/core/java/android/app/ActivityThread.java
|
9540a8d320d14b75203d9cc4ca65638fd06a94fb |
|
21-Sep-2010 |
Vasu Nori <vnori@google.com> |
DO NOT MERGE - use appropriate names on SQL numbers in 'adb bugreport' output now looks like the following SQL heap: 551 MEMORY_USED: 551 PAGECACHE_OVERFLOW: 113 MALLOC_SIZE: 50 DATABASES pgsz dbsz Lookaside(b) Dbname 1 148 500 contacts2.db 1 8 0 (attached) presence_db 1 18 31 :memory:SQL Change-Id: I8bb65a522fd9478ff2f6a8c27e69f9e6c10aef8a
/frameworks/base/core/java/android/app/ActivityThread.java
|
b835d9abd6d7c89bb1226fc83d1e96b3b04b9ee3 |
|
15-Sep-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am f26ac1f8: am 96d6c345: Merge "Unify some duplicate StrictMode-enabling code." into gingerbread Merge commit 'f26ac1f8ed27d9e88bbde8978557c34788c7509c' * commit 'f26ac1f8ed27d9e88bbde8978557c34788c7509c': Unify some duplicate StrictMode-enabling code.
|
50d66f9fcdac84b2af65a82be56728f54b1a7ef0 |
|
14-Sep-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Unify some duplicate StrictMode-enabling code. Change-Id: Ifb92f35d9e245dbdb5e201597d8be702bce9e8b8
/frameworks/base/core/java/android/app/ActivityThread.java
|
0b29554188f57ff1eec4150fa24f9a6a6603ed0f |
|
11-Sep-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am 37fc8cc7: am b724d251: Merge "Enable strictmode logging in system_server & add a lock." into gingerbread Merge commit '37fc8cc7b87133eddacaeab60cabefaf4a7b9bdd' * commit '37fc8cc7b87133eddacaeab60cabefaf4a7b9bdd': Enable strictmode logging in system_server & add a lock.
|
1e02d36b0f1dc833cf8a837c7619fbe6478694c8 |
|
10-Sep-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Enable strictmode logging in system_server & add a lock. We weren't logging strictmode violation in the system_server process in non-user builds (only system apps), even though the rest of the strictmode logging supports it. Also add a missing lock in ActivityManagerService. Change-Id: If2af96a7e4fdde604a647b836097f0029ef1334b
/frameworks/base/core/java/android/app/ActivityThread.java
|
a14c8e0c67223fdc9a0746b370ae594a92530e78 |
|
04-Sep-2010 |
Romain Guy <romainguy@google.com> |
Bring back instances counts to dumpsys meminfo. Change-Id: Idd846e137e8e87cb93551ba13751df60a8046eed
/frameworks/base/core/java/android/app/ActivityThread.java
|
5233920a216302b4aa03b100c32e8b3efe33cbc6 |
|
04-Sep-2010 |
Romain Guy <romainguy@google.com> |
Prevent the system process from using the HardwareRenderer. This change allows applications with the system UID to use the hardware renderer. Change-Id: I3c5d776ee9c07bb14933dbe3060cad4175e4fc95
/frameworks/base/core/java/android/app/ActivityThread.java
|
c9ad7c6dbb1d70b831cd79416cbe493ade50ed2c |
|
01-Sep-2010 |
Brian Carlstrom <bdc@google.com> |
resolved conflicts for merge of 41e99538 to master Change-Id: Idddb72e369f127cd74322c3c7385701c2412e343
|
1751086360056bc60d00f2ed2988bc82be9e7bd9 |
|
18-Aug-2010 |
Brian Carlstrom <bdc@google.com> |
New Java-based SamplingProfiler Summary: - libcore: new Java based SamplingProfiler - dalvik: remove old SamplingProfiler native bits - frameworks/base: New placeholder SamplingProfilerIntegration - vendor/google: remove old profiler snapshot parsing code Details: libcore A new 100% Java SamplingProfiler. While it has more overhead that the old native one, the new one can actually collect more than the current PC and frame pointer, so you can get useful context of where your app is spending time. It currently provides ASCII hprof format output for use with tools like PerfAnal dalvik/src/main/java/dalvik/system/SamplingProfiler.java Unit test for the new SamplingProfiler dalvik/src/test/java/dalvik/system/SamplingProfilerTest.java Add core-tests-dalvik JavaLibrary.mk dalvik Removing native code that supported the old SamplingProfiler vm/Dvm.mk vm/native/InternalNative.c vm/native/dalvik_system_SamplingProfiler.c frameworks/base Placeholder SamplingProfilerIntegration. Later plans include generating EventStackTrace protobufs. New SamplingProfiler does not have a global instance, so SamplingProfilerIntegration provides one in INSTANCE. Old binary snapshot format is temporily replaced with ASCII hprof data. core/java/com/android/internal/os/SamplingProfilerIntegration.java Simplified interface for zygote profile snapshotting core/java/com/android/internal/os/ZygoteInit.java Current SamplingProfilerIntegration does not track event loop explicitly, but hprof information does include thread information. core/java/android/app/ActivityThread.java vendor/google Removing code for parsing old SamplingProfiler snapshot format tools/samplingprofiler/Android.mk tools/samplingprofiler/NOTICE tools/samplingprofiler/profiler.iml tools/samplingprofiler/profiler.ipr tools/samplingprofiler/pull-snapshots.sh tools/samplingprofiler/sorttable.js tools/samplingprofiler/src/com/android/profiler/PrintHtml.java
/frameworks/base/core/java/android/app/ActivityThread.java
|
818c830c59fb8fb0fe7576f1e5a073ab599227c8 |
|
28-Aug-2010 |
Kenny Root <kroot@google.com> |
am 83285781: am 7046bd92: Merge "Allow native shared libraries in ASEC containers" into gingerbread Merge commit '8328578152fbfd23952a6cda4b2e60853d78eb74' * commit '8328578152fbfd23952a6cda4b2e60853d78eb74': Allow native shared libraries in ASEC containers
|
85387d7ba36e56b291cbde87acb5a5b2200fe01c |
|
26-Aug-2010 |
Kenny Root <kroot@google.com> |
Allow native shared libraries in ASEC containers This change moves the native library handling earlier in the package installation process so that it may be inserted into ASEC containers before they are finalized in the DefaultContainerService. Note that native libraries on SD card requires that vold mount ASEC containers without the "noexec" flag on the mount point. Change-Id: Ib34b1886bf6f94b99bb7b3781db6e9b5a58807ba
/frameworks/base/core/java/android/app/ActivityThread.java
|
7f7ce40f90cf00dc046fb9520d77d29e96b474d6 |
|
28-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
resolved conflicts for merge of 28130bae to master Change-Id: I13df8dc12092c3d2536e12216df9130d5914380a
|
333b8cba996c8ebb8ca55ebfc5cc536bdd64af94 |
|
26-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
SharedPreferences$Editor.startCommit() Adds a fire-and-forget save method (startCommit) to the SharedPreferences.Editor, which is the way most people use it anyway. This commit adds the implementation. The previous commit added the interface and docs: previous change: Idf9934b445da1fb72b79f0192218b47c0a7f5a34 git commit: edf32d01316bd3432c023f17747461b08ae36375 In addition, this change: -- adds a generic "runPendingWorkFinishers" mechanism to ActivityThread to wait on async operations that are still in flight and use it for this. -- ties runPendingWorkFinishers into Activity.onPause, BroadcastReceiver, and Service. -- makes sSharedPreferences keyed on name, not File, to avoid unnnecessary allocations -- documents and guarantees what thread OnSharedPreferenceChangeListener callbacks run on -- makes a few things in frameworks/base use startCommit(), notably Preference.java (which was ignoring the return value anyway) Change-Id: I1c8db60ad45643226fe6d246d3e513eeb7bd0ebd
/frameworks/base/core/java/android/app/ActivityThread.java
|
7f9106fb1f167607ce64a6013c24251971ab8bf8 |
|
25-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am 6cf1a8bf: am b1bbe99a: Merge "Some StrictMode API changes." into gingerbread Merge commit '6cf1a8bfb04aead9cee5f59df4529a79c0a92dca' * commit '6cf1a8bfb04aead9cee5f59df4529a79c0a92dca': Some StrictMode API changes.
|
97461bd25c3821f3fb6af9705f0612259c6b4492 |
|
24-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Some StrictMode API changes. * rename setThreadBlockingPolicy to setThreadPolicy (opens the way to using StrictMode for non-blocking-related things in the future?) * add allowThreadDiskWrites() and allowThreadDiskReads() to modify the current policy mask and return the old one. this will allow turning off part of StrictMode during certain regions of code. (for instance, writing to disk in Activity onPause...) Change-Id: Ia1878153713f79299971fdab567fa15b3cb9d56c
/frameworks/base/core/java/android/app/ActivityThread.java
|
37444f4239b26944d24f039c537d411ac7004243 |
|
21-Aug-2010 |
Dianne Hackborn <hackbod@google.com> |
am d172594e: am cf6d2a1d: Merge "Fix issue #2845673: android:exported="false" is not obeyed" into gingerbread Merge commit 'd172594e3a1e25f1f2c190e99421cb7d4963389b' * commit 'd172594e3a1e25f1f2c190e99421cb7d4963389b': Fix issue #2845673: android:exported="false" is not obeyed
|
b424b633bb3664bed924d2ea89036290a57eb2bd |
|
19-Aug-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2845673: android:exported="false" is not obeyed Thou shall obey. Change-Id: I09f163a0db7cc9189c8d7f5116cc8ca9d4f7a76c
/frameworks/base/core/java/android/app/ActivityThread.java
|
74446cef55e75aa6bf4627f4c128768a2cdc5b63 |
|
16-Jul-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am f96c2719: am 0c36c96f: Merge "StrictMode: batch drop box writes for system apps" into gingerbread Merge commit 'f96c2719c3cb4878e899b6fe0753b4f4b8aea8b7' * commit 'f96c2719c3cb4878e899b6fe0753b4f4b8aea8b7': StrictMode: batch drop box writes for system apps
|
ad13b9807b3311b5375e7b8acba894528c9146a8 |
|
14-Jul-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
StrictMode: batch drop box writes for system apps Change-Id: Iab49c15ecccefea1d36d86271e1ceb37d79e9449
/frameworks/base/core/java/android/app/ActivityThread.java
|
839458d8d4dbf44cd1778a23471cf8f948a2012c |
|
15-Jul-2010 |
Jim Miller <jaggies@google.com> |
resolved conflicts for merge of e03952c0 to master Change-Id: I414d934101d452a2c2500e539f0b0aff1e1b3ff0
|
0b2a6d0773211449fbde9d2706388714beeffebb |
|
14-Jul-2010 |
Jim Miller <jaggies@google.com> |
Fix 2797185: Re-enable thumbnail generation in framework This re-enables thumbnail generation code in the framework with a few improvements. In addition to enabling the system to capture thumbnails, it removes padding from the borders to account for space overlapped by system widgets (status bar, etc.). Thus, the contents of the bitmap are only those pixels unique to the activity. It also maximizes resolution of the bitmap by capturing the image in the application's current orientation. In landscape mode, it captures a bitmap with dimensions w x h. In portrait, it captures a bitmap with dimensions h x w. Where w and h are thumbnail_width and thumbnail_height as defined in dimens.xml. Though enabled, the change is not currently used in this branch. The work is being checked in here to avoid complicated downstream merges. Change-Id: Ifc8a4e0075d7d0697d8159589be3816ace31d70c
/frameworks/base/core/java/android/app/ActivityThread.java
|
06a6b558bd03d8f0fed8f94f1dcfc03c5a51bd1c |
|
14-Jul-2010 |
Andy McFadden <fadden@android.com> |
Implement native dump for "am dumpheap -n". This adds the ability to generate a trivial heap dump on demand. If the appropriate system properties aren't set, the output file will instead contain instructions for enabling them. The data returned by get_malloc_leak_info() is processed and written to the specified file. The output looks something like: Android Native Heap Dump v1.0 Total memory: 2981301 Allocation records: 2152 z 1 sz 65557 num 1 bt 8010dd78 afd12618 ... z 1 sz 52008 num 3 bt 8010dd78 afd12618 ... z 1 sz 24428 num 1 bt 8010dd78 8010de84 ... ...2149 more... END (the "..." is actually the remaining entries in the stack backtrace; I truncated it here) "z" indicates whether the allocation was made pre- or post-zygote, "sz" is the size allocated, and "num" is the number of allocations made of that size with the specified backtrace. Change-Id: I2d60f07444fce5f7178b3f51c928c8faa0b051bd
/frameworks/base/core/java/android/app/ActivityThread.java
|
824c510752fd6a30cdba5ed7324cb80a5043ce26 |
|
10-Jul-2010 |
Andy McFadden <fadden@android.com> |
Allow "am" to initiate heap dumps. This was mostly cloned from the "am profile" implementation. It's intended to replace the old "kill -10" approach used by "runhat". We could really use a native heap dump, so I pass a "managed" flag through that indicates whether we want to dump the native or managed heap. We don't currently have a native heap dump-to-file function, so it currently just logs a warning. (android.ddm.DdmHandleNativeHeap.getLeakInfo is a good start -- it copies /proc/maps and then calls get_malloc_leak_info to get some goodies. Needs some formatting to make it human-readable. I didn't want to cram all that into this change.) It would be useful if "am" didn't exit until the heap dump operation completed, but I'm not sure how to do that. Bug 2759474. Change-Id: I46bc98067738d8c72ac0fc10002ca67bb4929271
/frameworks/base/core/java/android/app/ActivityThread.java
|
45886e606593708e342b6a546e45727036eabf7c |
|
01-Jul-2010 |
Christopher Tate <ctate@google.com> |
am 705a2df9: am c8525edc: Merge "Remove memory monitoring from the system watchdog" into gingerbread Merge commit '705a2df97c51c3e31ed36831a4302d705e0532b2' * commit '705a2df97c51c3e31ed36831a4302d705e0532b2': Remove memory monitoring from the system watchdog
|
c27181c7f3e11170ec82807cfa416f0a906ff574 |
|
30-Jun-2010 |
Christopher Tate <ctate@google.com> |
Remove memory monitoring from the system watchdog This was originally written as an in-case-we-need-it facility, but was never actually used in production. It also soaked up a surprising amount of cpu on occasion, as well as doing sketchy things like demoting the system_server's primary looper thread to the background cgroup at times. Change-Id: I9a81a8d1e9caea9e0a1277d97785fe96add438d7
/frameworks/base/core/java/android/app/ActivityThread.java
|
8bb998d52c118d361390af89b14dd67a4563509a |
|
25-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
am ea8eafad: am 2529a453: Merge "Make bad notifications crash their application." into gingerbread Merge commit 'ea8eafad4f5438ec1291d45376959a996d36e15e' * commit 'ea8eafad4f5438ec1291d45376959a996d36e15e': Make bad notifications crash their application.
|
9d39d0cb361c5d3bba04a6bacf299be2162a6e92 |
|
25-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
Make bad notifications crash their application. Implement notification manager handling of bad notifications, to call a new activity manager to have the owner's process crashed (if there is one). Change-Id: Ib15e8d0c598756f3b39c99cc2045c18e054daf6b
/frameworks/base/core/java/android/app/ActivityThread.java
|
36e5f667bc889a7b1bc17f9a5bd44f33b2d47020 |
|
25-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of 2eb12a47 to master Change-Id: I79eb9d9f083e51ec1b99145d81632683669e7a99
|
01e4cfc47d0a2c7e7ab383d2fb23224ec52c0301 |
|
25-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
Some ActivityThread/ActivityManager cleanup. - Move PackageInfo out of ActivityThread, renaming to LoadedApk. - Rename some of the other PacakgeInfo inner classes to better represent what they are. - Rename HistoryRecord to ActivityRecord. - Introduce AppGlobals, to eventually let ActivityThread become package scoped. Change-Id: Ib714c54ceb3cdbb525dce3db9505f31042e88cf0
/frameworks/base/core/java/android/app/ActivityThread.java
|
bde75706592c77379fb6546283e733abaca6fe04 |
|
28-May-2010 |
Sen Hu <senhu@google.com> |
wire up sampling profiler to dropbox When system property "persist.sys.profiler_hz" > 0, SamplingProfilerService is loaded to SystemServer. It creates a FileObserver, watching any new file in the snapshot directory. When a snapshot is found, it is put in dropbox and deleted after that. SamplingProfilerIntegration writes snapshots with headers. Headers are <name, value> pairs, instantiated by caller. Currently header format is (also in source comment): Version: <version number of profiler>\n Process: <process name>\n Package: <package name, if exists>\n Package-Version: <version number of the package, if exists>\n Build: <fingerprint>\n \n <the actual snapshot content begins here...> BUG=2732642 Change-Id: I2c1699f1728e603de13dbd38f9d8443cd3eecc06
/frameworks/base/core/java/android/app/ActivityThread.java
|
0c330e26e853e478bf1c3d63eae98a42a1c12bad |
|
12-Jun-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am 11bd9d1e: am 94f14aec: Merge "More StrictMode work, handling violations in ActivityManagerService." into gingerbread Merge commit '11bd9d1ec20ce3bbd3791b537faad429a1ca87e7' * commit '11bd9d1ec20ce3bbd3791b537faad429a1ca87e7': More StrictMode work, handling violations in ActivityManagerService.
|
46d42387464a651268648659e91d022566d4844c |
|
11-Jun-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
More StrictMode work, handling violations in ActivityManagerService. Also starts to do duplicate-suppression. Change-Id: I0502f6ab6c45fa319298de4874ecfe44b7829d21
/frameworks/base/core/java/android/app/ActivityThread.java
|
b60c941811cc15ab34fcc2f038aba56f862659b8 |
|
11-Jun-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
resolved conflicts for merge of f37cbe6b to master Change-Id: I529b17e55b9668f900f685f92e9831e14a82db05
|
438d0595121a7a2cdf19741e76e3c0e21a5c173d |
|
10-Jun-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Introduce "StrictMode" This is a new public API for developers to opt-in to strict rules about what they're allowed to do on certain threads. (this is the public face of the @hide dalvik.system.BlockGuard, added recently...) In practice this will be used for developers to opt-in to declaring that they don't want to be allowed to do various operations (such as disk I/O or network operations) on their main UI threads. (these operations are often accidental, or even when they are fast come with a good chance of being slow or very slow in some cases....) Implementation wise, this is just a thread-local integer that has a bitmask of the things that aren't allowed, and more bits for saying what the violation penalty is. The penalties, of which multiple can be chosen, include: * logging * dropbox uploading for analysis/reporting * annoying dialog * full-on crashing These are all only very roughly implemented at this point, but all parts now minimally work end-to-end now, so this is a good checkpoint commit before this gets too large. Future CLs will polish all the above 4 penalties, including checksumming of stacktraces and minimizing penalties for duplicate violations. Change-Id: Icbe61a2e950119519e7364030b10c3c28d243abe
/frameworks/base/core/java/android/app/ActivityThread.java
|
b4bc78b16a05554c57508b488e21dd8eca4e13e6 |
|
13-May-2010 |
Dianne Hackborn <hackbod@google.com> |
Further work on fragments: - Implement all of the state saving and restoring machinery. This caused some flux in the API. - Add ability to have fragments that are retained across activity instances. - Fix some bugs. Change-Id: Ib6b5b0752d7f8d667cfdcd3e76d127cc9b6d901b
/frameworks/base/core/java/android/app/ActivityThread.java
|
3d32f6e5228e5dfbfe88b24f6df64406628a3e0c |
|
01-Apr-2010 |
Jeff Hamilton <jham@android.com> |
Add Activity.isChangingConfiguration(). This allows activities to know if they're being torn down due to a configuration change. Bug: 2557550 Change-Id: Ibd9bf5a06c92dbe3789049b84133cf4754381873
/frameworks/base/core/java/android/app/ActivityThread.java
|
67eb751e526539a7252a6d97173ed2c376fe3888 |
|
05-May-2010 |
Dianne Hackborn <hackbod@google.com> |
am 9bbc5683: am d9d009d7: am 3445dae3: am 65b2561c: Merge "Fix issue #2643754: Launcher is caching widget layouts for too long" into froyo
|
4416c3d6e4becd9ed39b89a03db0239c8225a135 |
|
05-May-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2643754: Launcher is caching widget layouts for too long With the .apk file names now changing during an update, we need to make sure to flush all caches related to a package when the package is removed. Otherwise we can continue to use the old package, since its old file may still exist if we try to load it too soon. Change-Id: I15f08dffca3feac999dbca4f24bef12a30ca0a66
/frameworks/base/core/java/android/app/ActivityThread.java
|
2dedce6e84679ead961a485c7fe4b0f77c713b6a |
|
15-Apr-2010 |
Dianne Hackborn <hackbod@google.com> |
Introducing Fragment. Basic implementation of an API for organizing a single activity into separate, discrete pieces. Currently supports adding and removing fragments, and performing basic lifecycle callbacks on them. Change-Id: I6ea8e6bdb04d93f8105c2e983fe9b6532422de34
/frameworks/base/core/java/android/app/ActivityThread.java
|
97107f0497c9afe549933a04ccc44858a0841c0b |
|
15-Apr-2010 |
Dianne Hackborn <hackbod@google.com> |
am 093d621c: am 11d7502b: am 8656145e: Merge "Fix issue #593153: Broadcast time out when sending..." into froyo
|
399cccb85749e02f6d3e12d1d2846310e7cbfdf1 |
|
14-Apr-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #593153: Broadcast time out when sending... ...ordered broadcast for ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE Turns out this was because the broadcast receiver for ContextImpl was not correctly being created, so when it received an ordered broadcast it would not tell the activity manager when it was done. This is now fixed, along with a ton of superficial changes to debug output to help track this down and a little cleanup of dealing with error cases in dispatching broadcasts. Also a fix for a NPE when dumping the broadcast state. Finally, a little fiddling with package manager to get rid of a lot of the noise when removing and re-adding packages on the SD card. Change-Id: I961c14836dc613d3ea8122b6e910ef866e7fcb25
/frameworks/base/core/java/android/app/ActivityThread.java
|
90a36726b7553a1e7efd2f4ecbe01d7e1b3e7a67 |
|
12-Apr-2010 |
Vasu Nori <vnori@google.com> |
let apps set statement-cache size. 1. we should let apps set their statement-cache size. right n ow it is 250 is the statement-cache size for all apps and that is wasting a lot of memory. each prepared statement is averaging about 1k-5K, depending upon the complexity of sql and schema. mnake default 25 and let apps increase the size, if they need to. 2. in "adb bugreport" info, print stats on the statement-cache hits/missies and size (in number of statement cached). this will help us understand how statement-cache is being used Change-Id: Ic53a2842ef75823757492778158fcb8d5b4a28bb
/frameworks/base/core/java/android/app/ActivityThread.java
|
eb9e9ec06167b0caa459f2fb3f3fae094bb8d8f7 |
|
24-Mar-2010 |
Christopher Tate <ctate@google.com> |
Return the right thing from Context.getApplicationContext() Previously, this would always return the app context for the first application ever instantiated in the process. Usually this is fine, since usually there will be one process per application, but in the case of shared-process apps, it causes activities/views to try to access the wrong set of resources, be unable to access their proper derived-class Application objects, etc. Fixes bug #2513901 Change-Id: Ie19f2a86583c5d927db4d84a4262077450e37539
/frameworks/base/core/java/android/app/ActivityThread.java
|
ae07816a3fcae73fbbc4b23ec3f647d4bee473ce |
|
18-Mar-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix problem with calling onConfigurationChanged() too much. We now return the initial configuration for a window when it is added to the window manager. The view hierarchy would check to see if it was different than the last one, and not dispatch a configuration change down itself if not. However, when ActivityThread received it, it would always dispatch a config change even if it is the same. The solution is to only do this in ActivityThread if the config is actually different; otherwise, we continue to rely only on the activity manager explicitly telling us when to do a config change. Change-Id: I8a6e3565776dd2723c8b791496bb6041463d4b67
/frameworks/base/core/java/android/app/ActivityThread.java
|
694f79b5d1196640d1beb680b7d1fc68e6e77cbd |
|
18-Mar-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2519590: Lock screen stuck in landscape mode Well, mostly. There is still a problem here where the first time you show the lock screen it just doesn't draw itself. I assume this is something breaking in the view hierarchy as it floounders around removing and adding new views as it is first being shown... but no idea at this point what is the actual case. Change-Id: Iba99ae3242931c8673b17b106c86fc99e2c52abe
/frameworks/base/core/java/android/app/ActivityThread.java
|
061d58a10122b2ef56d4c2ed46090add16fb5b17 |
|
13-Mar-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix problem with starting a translucent activity in onCreate(). Fixes issue #2437252: Starting activity by means of startActivityForResult causes 5 seconds delay if "android:windowIsTranslucent" is true The optimization to avoid showing an activity window when a new activity is being started was a little too aggressive. Now it avoids doing this if there is not actually a fullscreen activity on top to cover it. Change-Id: I630e37a1f1d3b874b5a25572cbf887cebc2e3e91
/frameworks/base/core/java/android/app/ActivityThread.java
|
c9421ba1f46d9f9aeee833e1fde2cc263b058411 |
|
12-Mar-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2492387: system server crash in WallpaperManagerService Also move some of the important framework error logs over to Slog. Change-Id: If6697c3e4f18498612ebd7b0e4e4f042fd713372
/frameworks/base/core/java/android/app/ActivityThread.java
|
c3849200fa60b22ea583ba2a6f902d6a632a5e7e |
|
09-Mar-2010 |
Vasu Nori <vnori@google.com> |
add more debug info to SQL section in bugreport after this CL, adb bugreport will the following info (under SQL section of each app's meminfo dump) SQL heap: 344 memoryUsed: 344 pageCacheOverflo: 67 largestMemAlloc: 50 DATABASES Pagesize Dbsize Lookaside Dbname 1024 7 24 googlesettings.db 1024 26 110 talk.db 1024 11 0 (attached) transient_talk_db 1024 11 32 subscribedfeeds.db 1024 20 27 gservices.db Change-Id: Iabd13be9793d9794137c60a045b84fa632f13498
/frameworks/base/core/java/android/app/ActivityThread.java
|
4528186e0d65fc68ef0dd1941aa2ac8aefcd55a3 |
|
06-Mar-2010 |
Christopher Tate <ctate@google.com> |
Refactor android.backup => android.app.backup Change-Id: I0b21316ff890d7f3c7d4b82837bb60670724c2e8
/frameworks/base/core/java/android/app/ActivityThread.java
|
778ce486656a00c21ae9b51cda1f504fc11004f6 |
|
09-Feb-2010 |
Brian Carlstrom <bdc@google.com> |
Issue 5697: getContextClassLoader returns a non-application classloader ActivityThread should try to set the value for Java Thread.getContextClassLoader to the PathClassLoader that loaded the APK's classes so that Java frameworks that use the Java context class loader, which is not to be confused with the android.content.Context.getClassLoader which serves a similar purpose in the Android framework. However, we avoid setting the Java context ClassLoader to the APK's PathClassLoader if there is a static indication that multiple packages may share the VM, since they could load in an unpredictable order leading to different values for the thread local Java context ClassLoader. In this case, we instead use a specially created WarningContextClassLoader that warns the user the first time the Java context ClassLoader. Currently the static indications that a package might share a VM with other packages are the presence in the AndroidManifest of a sharedUserId or requesting a non-default application process name.
/frameworks/base/core/java/android/app/ActivityThread.java
|
9e0f5d9a63ba88c2bf69df0557f8c9696db370c4 |
|
23-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix some random bugs. 2185256: After open &close of device keyboard shortcut does not added to Home desktop. ActivityThread was losing the last saved state when restarting or launching into a paused state. 2366174: defaults not cleared when they should be PackageManagerService now removes any preferred activity records for a package when it is uninstalled. 2154556: Battery stats can have an unbounded number of wake locks We now start combining wake locks into one shared record when we hit a maximum limit (currently 20). 2442519: Foreground services can have no notification by providing a bogus one. If the notification manager rejects our notification, the service is forced to no longer be in the foreground. 2442383: Finalization issues in com.android.server.am.PendingIntentRecord.java Cleaned up finalization to call super class and avoid the big activity manager lock (we still need to use the locks inside of the message system, but these are much less likely to be a problem). 2284190: Cannot call a phone number using adb We weren't getting the calling uid/pid in startActivity() if the caller did not supply an application record.
/frameworks/base/core/java/android/app/ActivityThread.java
|
e36d6e277e49475076b7872d36ea6a5c5b996e9d |
|
18-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Work on issue #2263557: PMF3000 showing hybrid of portrait and landscape modes This is a bunch of reworking of how configuration changes are handled: - When orientation is changing (for whatever reason), the window manager no longer tries to pre-emptively compute a new configuration. Instead, it just determines change is happening and tells the window manager. - The activity manager is now responsible for giving the window manager the final configuration it is using. This is both so it knows whem the activity manager is done with its configuration updates, and so the window manager can use the "real" configuration. - When an orientation or other configuration change is happening, freeze the screen and keep it frozen until the activity manager has given us the final configuration. - The window manager can now send new configurations to its clients during its layout pass, as part of a resize, if it has determined that it has changed. This allows for a new View.onConfigurationChanged() API for any view to easily find out when the configuration has changed. - ViewRoot now also works with the activity thread to make sure the process's current resources are updated to the new configuration when it receives one from a window. This ensures that at the time onConfigurationChanged() and other view callbacks are happening, the correct configuration is in force. - There is now a sequence number associated with Configuration, which ActivityThread uses to avoid using stale configurations. This is needed now that it can receive configurations asynchronously from both the window manager and activity manager. - The hack for keeping the locale has been removed, and underlying problem fixed by having Configuration initialize its locale to "unknown" instead of a valid default value.
/frameworks/base/core/java/android/app/ActivityThread.java
|
2155637d0028e87ebaaf71b9a77f3c43853e8f2f |
|
05-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Rename ApplicationContext to ContextImpl. I've been wanting to do this for a long long time.
/frameworks/base/core/java/android/app/ActivityThread.java
|
2a9094d07915a077026a651a7773f94322bf7d23 |
|
04-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Framework part of issue #2391576: Add method to start the Jit and call it
/frameworks/base/core/java/android/app/ActivityThread.java
|
7762d93621f508f4410fd37b5bbdfec0071b0420 |
|
11-Dec-2009 |
Paul Westbrook <pwestbro@google.com> |
Unbundling work Moved AndroidHttpClient, Rfc822InputFilter, Rfc822Validator NumberPicker, NumberPickerButton to android-common ---
/frameworks/base/core/java/android/app/ActivityThread.java
|
871ecdce67fb59a2603c1b93db657fe8b65695bd |
|
12-Dec-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2304284: contacts/dialer/recentcalls constantly flashing Make sure the application is always given the most recent configuration when launcher. Use the current configuration, instead of whatever happens to be set by the app, for reporting what it was launched with. Change-Id: I2ffe306f56cc9092b640546dd0a28d2c29b9c0b3
/frameworks/base/core/java/android/app/ActivityThread.java
|
08a462524a81bda336b17e25e3b178448880d448 |
|
08-Dec-2009 |
Christopher Tate <ctate@android.com> |
Make sure to acknowledge stale broadcasts If a broadcast arrives at a process but the receiver has been unregistered in the interval between dispatch and its arrival on the receiving process's side, we were simply dropping the broadcast entirely, leading to spurious ANRs and potentially issues involving future broadcasts being timed out incorrectly. Fix this by making sure to correctly 'finish' a broadcast even when the recipient app no longer has any receiver that matches the broadcast's profile. Change-Id: If990cab021a26668052cb536753f6c308d80a5b4
/frameworks/base/core/java/android/app/ActivityThread.java
|
f93152028726f75c26fa960ef6a5bc87ce867eea |
|
18-Nov-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2262563: 40 ANR reports from com.android.settings in dogfooding sholes running ERD43 Don't hold the global package log while instantiated an AssetManager+Resources, since this is a fairly heavy-weight operation, and if done in the background can starve the foreground. Change-Id: I5ad37324fb7c27ffdbf28e1498ca0ad667479580
/frameworks/base/core/java/android/app/ActivityThread.java
|
0be1f78c97ba6f38b315ab3ab28b44cdc883abec |
|
09-Nov-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2246723: Only one Application object gets onCreate called Change-Id: I83ba96fe81ad04258099d6f94a667dc7d9dd4fd3
/frameworks/base/core/java/android/app/ActivityThread.java
|
8ee038d9265cb4da0e65475610a1a88c51761bb5 |
|
06-Nov-2009 |
Christopher Tate <ctate@android.com> |
Set argv[0] from the main thread of an app, not a random binder thread Change-Id: Ibf6e51b7975cdb5e6aa97591a571c599ecf84020
/frameworks/base/core/java/android/app/ActivityThread.java
|
0c3154d3fc54a1b3d8358a2932042cca729327b9 |
|
07-Oct-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2163654: deadlock, runtime restart Don't hold a lock when the activity thread is telling the activity manager to release a provider. This requires that the activity manager now keep a reference count on the providers, because without the lock it is possible for activity thread to call in to request the provider again before it has finished telling about the release. Change-Id: I5f912903891f4edae85e28819d4e6f14b8f2e688
/frameworks/base/core/java/android/app/ActivityThread.java
|
68d881cf2d2b252f6f795cd64d43e316a1d736e5 |
|
05-Oct-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2166755: BroadcastReceiver trying to return result during a non-ordered broadcast Tell the broadcast receiver whether it is getting an initial sticky value, so it will be quiet about attempts to do ordered broadcast stuff. Note that the original bug being reported was not actually a crash, just an error log. So all we are doing here is making the log quieter. Change-Id: Iaf1b718d82093ec1197142410a64feff47eb3859
/frameworks/base/core/java/android/app/ActivityThread.java
|
e88846eeaf70f9f4299af9e3d54ba5dacede42b6 |
|
01-Oct-2009 |
Dianne Hackborn <hackbod@google.com> |
Semi-workaround for #2027266: app drawer showing up on the side of the screen (when booted while docked) This isn't really a fix, but we now have the activity report the configuration it actually launched in, so the activity manager will later adjust it if needed. Should help us recover from hitting the race in this particular case. Change-Id: I3bb83a48c2d692b4cb1822d8ae7d924cfa9187b2
/frameworks/base/core/java/android/app/ActivityThread.java
|
436344ae12c819f58306ceb94241a266141e1218 |
|
01-Oct-2009 |
Christopher Tate <ctate@android.com> |
Turn off most of the backup-related debug logging The core logging in BackupManagerService and in the Google backup transport are still enabled at this point. Change-Id: I10abfa565bbd1097dd3631051b6aca163e4af33a
/frameworks/base/core/java/android/app/ActivityThread.java
|
dc6b635cfa440454985461444c3cf1da8078cee1 |
|
30-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Debugging for #2027266: app drawer showing up on the side Nothing fixed, but this tells us what is going on. Change-Id: I174d16a3864af2fa235e8cc7b1e74d32a375fb42
/frameworks/base/core/java/android/app/ActivityThread.java
|
c1e605eff4a940d749bab6c854810038c1485ec7 |
|
26-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2136448: googleapps crashes while adding 2nd gmail account Change-Id: I1dc27959650643bf0c7fd0564719856d7b3efeb1
/frameworks/base/core/java/android/app/ActivityThread.java
|
432b713c9442a4c0e1e4d400fada0c44dc17e786 |
|
25-Sep-2009 |
Mike Cleron <mcleron@google.com> |
Fix bug 2129190 The context used by the status bar (i.e., the system context) was not properly initialized to have the right ApplicationInfo inside its PackageInfo. This eventually caused it to believe that it was running at 160dpi. Kudos to Dianne for figuring this out.
/frameworks/base/core/java/android/app/ActivityThread.java
|
9bfb707597898f54722460b48588007b682f3e2a |
|
22-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Various fixes and improvements to window, activity. - New meta-data you can add to a dock activity to have it launched by the home key when the device is in that dock. - Fix a deadlock involving ActivityThread's internal content provider lock. - New window flag to have a non-secure keyguard entirely dismissed when a window is displayed. - New WindowManagerPolicy APIs to allow the policy to tell the system when a change it makes during layout may cause the wall paper or overall configuration to change. - Fix a bug where an application token removed while one of its windows is animating could cause the animating window to get stuck on screen. Change-Id: I6d33fd39edd796bb9bdfd9dd7e077b84ca62ea08
/frameworks/base/core/java/android/app/ActivityThread.java
|
eec2f41d607c3eacba4f7d9cc098b335c7310d23 |
|
10-Sep-2009 |
Bob Lee <crazybob@google.com> |
Addressed reviewer comments.
/frameworks/base/core/java/android/app/ActivityThread.java
|
e540833fdff4d58e37c9ba859388e24e2945ed45 |
|
05-Sep-2009 |
Bob Lee <crazybob@crazybob.org> |
Integrated the profiler into the framework. We run it all the time if the persist.sampling_profiler system property is set. Saves snapshots to the SD card.
/frameworks/base/core/java/android/app/ActivityThread.java
|
5e1ab335e6e8fbfa19c64d53880a22f472010953 |
|
02-Sep-2009 |
Christopher Tate <ctate@android.com> |
Expand apps' control over the settings restore process Applications can now specify two more aspects of the restore process: whether they need to run with their own custom Application subclass rather than being launched in the usual restricted mode during restore, and whether it's okay for the backup manager to kill the app process once restore has completed. The new manifest attributes for these are, respectively, android:restoreNeedsApplication and android:killAfterRestore. If unspecified in the manifest, restoreNeedsApplication is false, and killAfterRestore is true. In order to support kill-after-restore cleanly, this change also adds a new system-process-only interface to the Activity Manager, which will schedule a "commit suicide" event on the target app's main thread looper. The framework backup agents have been given the appropriate new backup attributes as well.
/frameworks/base/core/java/android/app/ActivityThread.java
|
3025ef332c29e255388f74b2afefe05f64bce07c |
|
01-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Various infrastructure to support a running services UI. Some of this is temporary (in particular the two approaches for getting process memory, one working but horrible, the other not working but preferred) until I figure out the best way to do it. Change-Id: I8c8f25062d481fcea22a47d459b083d2fd8a5040
/frameworks/base/core/java/android/app/ActivityThread.java
|
f6f9f2d0256930ce0bb4913b2260b8480914edc2 |
|
22-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Add more control over a service's start state. One of the problems I have been noticing is background services sitting around running and using resources. Some times this is due to the app developer doing this when they shouldn't, but there are also a number of issues with the current Service interaction model that make it very difficult (or impossible) to avoid getting services stuck in the started state. This is a change/enhancement to the Service API to try to address this. The main change is that Service.onStart() has been deprecated, replaced with a new Service.onStartCommand() that allows the service to better control how the system should manage it. The key part here is a new result code returned by the function, telling the system what it should do with the service afterwards: - START_STICKY is basically the same as the previous behavior, where we usually leave the service running. The only difference is that it if it gets restarted because its process is killed, onStartCommand() will be called on the new service with a null Intent instead of not being called at all. - START_NOT_STICKY says that, upon returning to the system, if its process is killed with no remaining start commands to deliver, then the service will be stopped instead of restarted. This makes a lot more sense for services that are intended to only run while executing commands sent to them. - START_REDELIVER_INTENT is like START_NOT_STICKY, except if the service's process is killed before it calls stopSelf() for a given intent, that intent will be re-delivered to it until it completes (unless after 4 or more tries it still can't complete, at which point we give up). Change-Id: I978f5ca420d70023d1b5e7f97de639d09381f8ad
/frameworks/base/core/java/android/app/ActivityThread.java
|
82e1ee93eece8fb0aec6acc3ef4ee7b1c86feec7 |
|
12-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2048263: More debugging information We now hopefully do better about generating the anr reports, and include information about the malloc loaded assets in meminfo.
/frameworks/base/core/java/android/app/ActivityThread.java
|
0d907fa00bd9b20e69f2a95a71fbaf9fffeb8c94 |
|
28-Jul-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #1991230: DisplayMetrics.displayHeight is not updated with orientation change
/frameworks/base/core/java/android/app/ActivityThread.java
|
96e240f25a97c10bba863df328ed73a82c34ff61 |
|
27-Jul-2009 |
Dianne Hackborn <hackbod@google.com> |
Fiddle with default densities to try to sanitize the API. An issue with the density API is that bitmaps assumed the old default density, so new programs would have to explicitly set the correct density for every bitmap they create. This is an attempt to fix that situation, by define the default density of bitmaps to be the main screen's density, except for old apps where it is the original default density. Actually implementing this is not so great, though, because the Bitmap constructors can't really know anything about who is calling them to know which density to use. So at this level the compatibility mode is defined per-process -- meaning the initial package loaded into a process defines the default bitmap density, and everyone else loaded in later on has to live with that. In practice this shouldn't be much of a problem, there shouldn't be much mixing of old vs. new apps in a process. It does mean that, going forward, if a developer is going to use shared user IDs for this, they will need to make sure either that all of their apps are in the same compatibility mode, or that their code explicitly sets the density of bitmaps it receives. This isn't all that great, but I think it is worth the benefit of allowing people who write modern apps to not have to deal with bitmap densities. This change also does some cleanup of the density management (making sure to always copy over bitmap densities, etc) and adds java docs to explain the various ways density is set and used by the system.
/frameworks/base/core/java/android/app/ActivityThread.java
|
11ea33471e1a14a8594f0b2cd012d86340dd3bd8 |
|
23-Jul-2009 |
Dianne Hackborn <hackbod@google.com> |
Allow for screen density drawables in compatibility mode. This change allows us to use drawables that match the current screen density even when being loaded in compatibility mode. In this case, the bitmap is loaded in the screen density, and the bitmap and nine-patch drawables take care of accounting for the density difference. This should be safe for existing applications, for the most part, since they shouldn't really be pulling the bitmap out of the drawable. For the small rare chance of them breaking, it worth getting the correct graphics. Also this will only happen when there is actually a resource of the matching density, and no existing apps should have resources for anything besides the default density (though of course all of the framework resources will be available in the native density). As part of this, the bitmap density API has been changed to a single integer provider the DPI unit density.
/frameworks/base/core/java/android/app/ActivityThread.java
|
a53b828635fce8b6b2d3e3377d74d72070056623 |
|
17-Jul-2009 |
Dianne Hackborn <hackbod@google.com> |
Add "nodpi" density, and expose a bunch of density-related APIs. Also update the DpiTest app to use nodpi images, and try to have a mode where it turns off compatibility though it's not quite working.
/frameworks/base/core/java/android/app/ActivityThread.java
|
b06ea706530e6d19eb2a1a9a7ae6c5dd77d80af0 |
|
13-Jul-2009 |
Dianne Hackborn <hackbod@google.com> |
Add reporting of activity movement for search manager. This adds a new API with the activity manager to find out about movement between activities. For my sanity, the old IActivityWatcher is now renamed to IActivityController, and the new activity movement interface is named IActivityWatcher. This changes the search manager itself to use the new API to manage its state. Note that there are still problems when going back to the search dialog after it was hidden -- the suggestions window no longer appears until you explicitly dismiss and re-show it.
/frameworks/base/core/java/android/app/ActivityThread.java
|
ba3ba57921dedaaef669719c0359c0caf60e008b |
|
09-Jul-2009 |
Mitsuru Oshima <oshima@google.com> |
* Use cached resources for widgets
/frameworks/base/core/java/android/app/ActivityThread.java
|
d1475e0375cbf1ebd5010c6ce96bbdc1de6c1b57 |
|
10-Jul-2009 |
Christopher Tate <ctate@google.com> |
Don't crash the app when restore agent bringup throws Restore runs during the SetupWizard, before the phone is usable per se, so we want to avoid presenting the usual "Application whatever has crashed..." dialog to the user in the middle of that process. This change modifies the exception handling around agent bringup so that agent-originated exceptions are caught and a null agent binder reported to the backup manager. There are three points during this code sequence at which an exception can be thrown due to application-code error: + the app's manifest can name a nonexistent or malformed BackupAgent class, incurring a VM-level exception like ClassNotFound or BadCast. - the agent's onCreate() method could crash/throw. - the agent's onBind() method could crash/throw. The new code arrangement here puts a try/catch around all of these possible failure points. When the code is invoked for backup, any caught exception is merely rethrown. During restore, however, execution is allowed to proceed through reporting the app's agent binder back to the activity manager. If any exception was thrown, this reported binder will be null, i.e. a clean failure notification to the backup manager. What this code does *not* do at present is tear down the app when an exception has been thrown. This is happens if the exception is allowed to propagate. Doing so cleanly is problematic, however, in circumstances where mutiple apps and agents share a process. Leaving the background process around until it is torn down by the usual policies is probably the safer course at present.
/frameworks/base/core/java/android/app/ActivityThread.java
|
fff2fda0199dedbf1079454dca98a81190dce765 |
|
01-Jul-2009 |
Suchi Amalapurapu <asuchitra@google.com> |
Fix memory leaks in system_server unlink DeathRecipients in a whole bunch of places to avoid memory leaks
/frameworks/base/core/java/android/app/ActivityThread.java
|
c984329d30ba23be90f0e407684ad2410a9bbfe0 |
|
25-Jun-2009 |
Suchi Amalapurapu <asuchitra@google.com> |
Invoke getSystem.updateConfiguration when binding an application to update config changes in Resources.mSystem Since Resources is preloaded in the zygote, system resources in Resources need to be updated with config changes every time an application is started
/frameworks/base/core/java/android/app/ActivityThread.java
|
9c8dd55a9d829c29a3feee9469d8c2f27a9f5516 |
|
24-Jun-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix bug 1829561 ("am profile" with bad filename kills process). The am command is now the one that takes care of opening the target file, handling the opened file descriptor to the process that will be profiled. This allows you to send profile data to anywhere the shell can access, and avoids any problems coming up from the target process trying to open the file.
/frameworks/base/core/java/android/app/ActivityThread.java
|
d97c7adfc2d6e885826e40694a116cf3f9225025 |
|
19-Jun-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #1753079: running instrumentation in shared processes. The check for allowing the start of an activity was broken, it was comparing the process of that activity's application vs. the current instrumentation target package name. Okay it was utterly insane. Now this check is that the target activity will be running in the same process as the instrumentation, which is really what we want.
/frameworks/base/core/java/android/app/ActivityThread.java
|
5c1e00b14d2ef10ec76abf3e951fa8003a67f558 |
|
19-Jun-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix targetSdkVersion, make resize mode a flag, delayed dexopt, easy ApplicationInfo. - Fix a bug where targetSdkVersion could not be set if minSdkVersion. Stupid, stupid. Also make sure to fail if minSdkVersion is for a code name. Really stupid. - Change the API for resize compatibility mode to be a bit in the flags field, instead of a separate boolean. - Implement delayed dexopting, to avoid the looong full dexopt during boot. This is only enabled for "eng" builds. When in this mode, the activity manager will make sure that a dexopt has been done before loading an .apk into a process, and will try to avoid displaying ANRs if they are due to the dexopt causing some operation to take longer than it normally would (though I make no guarantees about this totally working). - Add API to Context to get the ApplicationInfo for its package, for easy access to things like targetSdkVersion.
/frameworks/base/core/java/android/app/ActivityThread.java
|
1ccac75e1f1b97eccb916a8de04fc1012b30f6e5 |
|
12-Jun-2009 |
Suchi Amalapurapu <asuchitra@google.com> |
Remove circular dependency in PackageManager. api freeStorage uses PendingIntent from android.app Create a new public IntentSender class that can be used by PackageManager instead. This new class uses IIntentSender internally and can only be created by PendingIntent for now. Provide a new getIntentSender api in PendingIntent to create an instance of this class. Move IIntentSender and IIntentReceiver from android.app to android.content Change imports of IIntentSender and IIntentReceiver to reflect the new package name The PackageManager api has been named as freeStorageWithIntent and will be renamed as freeStorage once the older api(which has been deprecated) will be removed shortly.
/frameworks/base/core/java/android/app/ActivityThread.java
|
d9aef73f72cb11ba7f278a0ef13c6d02ffc95851 |
|
17-Jun-2009 |
Mitsuru Oshima <oshima@google.com> |
Squashed commit of the following: commit 9798cd23605c96c1d6a29202f4d31f5454079b61 Author: Mitsuru Oshima <oshima@google.com> Date: Tue Jun 16 13:50:44 2009 -0700 Made other toShortString in performDestroyActivity safe. commit 19bf973df81d9d01210effb39c99e5236f2229c1 Author: Mitsuru Oshima <oshima@google.com> Date: Fri Jun 12 15:50:03 2009 -0700 * component can be null after destory? This was causing NPE in catch block, which hides the actual exception. Conflicts: core/java/android/app/ActivityThread.java
/frameworks/base/core/java/android/app/ActivityThread.java
|
12172baa6b72a8996b3f043f18067c9b43ed3bc8 |
|
13-Jun-2009 |
Mitsuru Oshima <oshima@google.com> |
* component can be null after destory? This was causing NPE in catch block, which hides the actual exception.
/frameworks/base/core/java/android/app/ActivityThread.java
|
9189cabb0b6c6c28232fe6f412b7ba7a37352a6a |
|
03-Jun-2009 |
Mitsuru Oshima <oshima@google.com> |
* Moved supports-density tag under manifest * Refactored Compatibility code * Added CompatibilityInfo class * Removed getApplicationScale from Context * Added Resources#getCompatibilityInfo so that RootView can get the compatibility info w/o going through Context * Expandable support * Added expandable tag under manifest * Old application w/o expandable is given the default screen size ([320, 480] x density). * The non-expandable window is centered.
/frameworks/base/core/java/android/app/ActivityThread.java
|
181fafaf48208978b8ba2022683ffa78aaeddde1 |
|
14-May-2009 |
Christopher Tate <ctate@google.com> |
Retool the backup process to use a new 'BackupAgent' class Backups will be handled by launching the application in a special mode under which no activities or services will be started, only the BackupAgent subclass named in the app's android:backupAgent manifest property. This takes the place of the BackupService class used earlier during development. In the cases of *full* backup or restore, an application that does not supply its own BackupAgent will be launched in a restricted manner; in particular, it will be using the default Application class rather than any manifest-declared one. This ensures that the app is not running any code that may try to manipulate its data while the backup system reads/writes its data set.
/frameworks/base/core/java/android/app/ActivityThread.java
|
06de2ea752171f52a4e6e6872cb3a0689e591dcb |
|
21-May-2009 |
Dianne Hackborn <hackbod@google.com> |
Activity Manager changes the scheduling group of processes. The algorithm for this is currently very simple: all persistent processes are always in the normal scheduling group, all other processes are normal if their oom_adj is as good or better than VISIBLE, otherwise they are in the background group. Note that this currently results in a fair number of log messages about not being able to change the group, since the system process does not have permission to do so. Once a kernel fix is in, these will go away and the code will start working.
/frameworks/base/core/java/android/app/ActivityThread.java
|
a1565b934093e0fc29d2ff2104e279aad4a233d3 |
|
12-May-2009 |
Mitsuru Oshima <oshima@google.com> |
removing log message checked in by acccident.
/frameworks/base/core/java/android/app/ActivityThread.java
|
58feea74b42bbaaa0552d76af23873bdd0b5dca2 |
|
12-May-2009 |
Mitsuru Oshima <oshima@google.com> |
* update all metrics data when updating density. * Keyboard should use DisplayMetrics from Resource rather than getting it from WindowManager as the display metrics can differ under compatibility mode.
/frameworks/base/core/java/android/app/ActivityThread.java
|
2e3d3b9ce74cb9c906e5cc0e9898d757d45c4237 |
|
07-May-2009 |
Mitsuru Oshima <oshima@google.com> |
* update density correctly when the configuration is changed. * Turns private sLcdDensity to public DEVICE_DENSITY to use it in ActivityThread
/frameworks/base/core/java/android/app/ActivityThread.java
|
13735a255dedd2c2e3b0cff66f0be2e17671f553 |
|
29-Apr-2009 |
Mitsuru Oshima <> |
Merge branch 'readonly-p4-donut' into donut
|
8169daed2f7a8731d478b884b1f455c747b88478 |
|
29-Apr-2009 |
Mitsuru Oshima <> |
AI 147976: Compatibility mode support. Part 2. * Introduced ApplicationScale (may not be good name. CompatibilityScale? CanvasScale? Pls let me know if you have better idea) * Changes to RootView / SurfaceView - Makes the app believe it's running in the supported density/resolution. - Makes the window manager believe it's running at the right density/resolution. * Added methods to Rect/Event for scaling up/down. Known issues: * certain kind of images (such as nine patch for buttons) seesm to be loaded not by app, thus does not take the scale into account, which, in turn, is causing layout issue. * ZoomButton in MapView is rendered in wrong place * Transparent region on Surface is not correct * Specifying different densities in one process is not working. BUG=1770627 Automated import of CL 147976
/frameworks/base/core/java/android/app/ActivityThread.java
|
caf0df1b7f99736aed1a0b923ef278fc4fd0fcca |
|
27-Apr-2009 |
Mike Reed <reed@google.com> |
Add call to (new) Canvas.freeCaches() in response to low-memory This is in conjunction with removing a similar call made by the browser. Now it will be centralized, and the browser's call site will be removed.
/frameworks/base/core/java/android/app/ActivityThread.java
|
b70f3dff01e7e1e85f77cf0b0b2eaba8200eb82c |
|
08-Apr-2009 |
Christopher Tate <ctate@google.com> |
Preserve an Activity's setIntent() state across relaunches Previously any Intent designated by setIntent() would be lost when the Activity was shut down and restarted due to orientation change. Now the custom intent is preserved across the relaunch. Bug: b/1743425
/frameworks/base/core/java/android/app/ActivityThread.java
|
ce229059e25066b36c99208a04e8e5696a76abf3 |
|
26-Mar-2009 |
Chris Tate <> |
Automated import from //branches/donutburger/...@142714,142714
/frameworks/base/core/java/android/app/ActivityThread.java
|
8a7dc17790b7f24e8e819eca46d14c4471230eba |
|
25-Mar-2009 |
Chris Tate <> |
Automated import from //branches/donutburger/...@141391,141391
/frameworks/base/core/java/android/app/ActivityThread.java
|
105925376f8d0f6b318c9938c7b83ef7fef094da |
|
19-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake_rel/...@140373
/frameworks/base/core/java/android/app/ActivityThread.java
|
f5b4b98fada53d91c4c2ebeb5a1d33ccc95c94d2 |
|
06-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@136745
/frameworks/base/core/java/android/app/ActivityThread.java
|
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/app/ActivityThread.java
|
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/app/ActivityThread.java
|
d24b8183b93e781080b2c16c487e60d51c12da31 |
|
11-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@130745
/frameworks/base/core/java/android/app/ActivityThread.java
|
f1e484acb594a726fb57ad0ae4cfe902c7f35858 |
|
22-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@127436
/frameworks/base/core/java/android/app/ActivityThread.java
|
9266c558bf1d21ff647525ff99f7dadbca417309 |
|
16-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@126645
/frameworks/base/core/java/android/app/ActivityThread.java
|
f013e1afd1e68af5e3b868c26a653bbfb39538f8 |
|
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
/frameworks/base/core/java/android/app/ActivityThread.java
|
54b6cfa9a9e5b861a9930af873580d6dc20f773c |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
/frameworks/base/core/java/android/app/ActivityThread.java
|