cd75706117432e33d11639e675bcff50479a6bb9 |
|
20-Oct-2012 |
Amith Yamasani <yamasani@google.com> |
System server should always send broadcasts to a specific or all users Bug: 7368245 Log a warning if the system process calls unqualified sendBroadcast() and other calls. As a result of the logging above, found a few more method calls such as bindService() that would benefit from being more explicit to avoid future confusion and reduce the log warnings. Change-Id: I17f15c8be9adf7becd456d6abbab606f19befdbf
/frameworks/base/core/java/android/app/ContextImpl.java
|
c0bd747b0605af251ff136277f14220a5a4c9818 |
|
09-Oct-2012 |
Dianne Hackborn <hackbod@google.com> |
Further work on issue #7307399: Framework needs a new pre-user-shutdown... ...phase & callback API I realized there were a few things wrong with what was there. The new ACTION_USER_STARTING was not being sent for the first user at boot, and there was an existing problem where ACTION_USER_STARTED was sent every time there was a user switch. Also improved some debug output of broadcasts to make it easier to see what is going on in this stuff, and better reporting of why a service couldn't be started. Change-Id: Id8a536defbbad1f73d94a37d13762436b822fbe3
/frameworks/base/core/java/android/app/ContextImpl.java
|
9c2a38ed10592a54d9bb753ef882632f7a8cd446 |
|
08-Oct-2012 |
Amith Yamasani <yamasani@google.com> |
Merge "Fix resource reading for secondary users" into jb-mr1-dev
|
64442c11555d828a41af0b8a58ab933357889061 |
|
07-Oct-2012 |
Amith Yamasani <yamasani@google.com> |
Fix resource reading for secondary users Bug: 7086881 Load resources for the correct user. Also clean up package monitoring and locking. Added dump method to SearchManagerService. Sneaking in a change to make crash dialogs visible to current user. Change-Id: Id56dd15428d66084de995e28be242db27c15fda3
/frameworks/base/core/java/android/app/ContextImpl.java
|
6f2a3d298205522f2e799800dace0e6c345dd4d3 |
|
06-Oct-2012 |
Adam Powell <adamp@google.com> |
Quick settings user display and switching Load user information for the current user and display in quick settings tile. Name is pulled from the contacts DB from the "Me" profile, which will override the raw name on the system user if needed. Open the user switcher on the lock screen if this tile is clicked and there is more than one user registered on the system. If there is only one user, show the "Me" quick contact card. Darken the background protection behind the user's name on the QS tile layout so that it's readable against very light profile pic backgrounds. Bug 7175023 Bug 7257997 Change-Id: Ia1e7dd7af72dbd49113a827f9228e0a32e20a0dc
/frameworks/base/core/java/android/app/ContextImpl.java
|
fc3f24b4b60c10e0d3f41f70df37e11ea311cc2c |
|
02-Oct-2012 |
Jeff Sharkey <jsharkey@android.com> |
Make USB services multi-user aware. USB settings are now isolated per-user, since they revolve around installed packages. User-specific settings are returned based on calling user, or referenced by UserHandle passed to SystemUI. Each settings Context is wrapped as a specific user, so all broadcasts are sent correctly. Upgrades any existing USB settings to OWNER. Physical events, like new devices, are routed to the currently active user. Switch to using AtomicFile when persisting settings. Bug: 7244888 Change-Id: I8a723ad3d55ac1bff99276c5f3a3f5e8f013432f
/frameworks/base/core/java/android/app/ContextImpl.java
|
ded653b168b19f6061889907d4f562d764c5559b |
|
28-Sep-2012 |
Jeff Sharkey <jsharkey@android.com> |
Fix "system" resources; more context user work. Special-case "system" resources, since it doesn't have an ApplicationInfo. Also switch Context and PackageManager to using the wrapped UserHandle for outgoing calls. Bug: 7242361 Change-Id: I1ecd2a4752399a6dce2de97c59bd5545996c9a99
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
ea7e91514ee1968d15713e82a5cca745e2c46a05 |
|
25-Sep-2012 |
Amith Yamasani <yamasani@google.com> |
AppInfo from Notifications for secondary users Required wiring up startActivitiesAsUser() Bug: 7224950 Also fix a bug in navigateUp in secondary user Change-Id: I114ae2de0457362d62e899fdb94b12239a3eb778
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
27bd34d9d9fe99f11b80aa0bbdb402fb47ef4158 |
|
16-Sep-2012 |
Jeff Sharkey <jsharkey@android.com> |
Multi-user MTP. The current MTP kernel driver at /dev/mtp_usb is exclusive, meaning only one process can have it open. In addition, each MTP session with a desktop requires unique object IDs, which doesn't hold true across users on the device. To solve these two issues, when switching users we cycle the USB host stack to disconnect both local and remote MTP connections, giving the new user's media process a chance to claim /dev/mtp_usb, and causing the desktop to initiate a new MTP session. This change also allows BroadcastReceivers to registerReceiver() allow retrieval of a current sticky broadcast. Adds a system property to override maximum users. Removes MOUNTED broadcasts for secondary users. Allows INTERACT_ACROSS_USERS to getCurrentUser(). Bug: 6925114 Change-Id: I02b4a1b535af95fb2142655887b6d15a8068d18a
/frameworks/base/core/java/android/app/ContextImpl.java
|
4dc7a68dbeaa0edd8815b2105915753310d58343 |
|
11-Sep-2012 |
Christopher Tate <ctate@google.com> |
Set up default (random) Android IDs for all users Also correct some now-misleading terminology in a permission-check log message, and fix a bug in which a system component trying to write to a secondary user's settings would wind up writing the owner's settings instead. Bug 7132405 Change-Id: I5b8fafc35720390a01652e386ab5b7c0ad751abe
/frameworks/base/core/java/android/app/ContextImpl.java
|
5e03e2ca7d25b899b129baad2dd5eca6bf99d88a |
|
06-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
More multi-user stuff: - New (hidden) isUserRunning() API. - Maintain LRU list of visited users. - New FLAG_IS_DATA_ONLY for ApplicationInfo. - Clean up pending intent records when force-stopping a user (or package). (Also fixes bug #6880627: PendingIntent.getService() returns stale intent of force stopped app) - Fix force-stopping when installing an app to do the force-stop across all users for that app. - When selecting which processes to kill during a force stop, do this based on the actual packages loaded in the process, not just process name matching. - You can now use --user option in am when starting activities, services, and instrumentation. - The am --user option accepts "current" and "all" as arguments. - The pm uninstall command now uninstalls for all users, so it matches the semantics of the install command. - PhoneWindowManager now explicitly says to start home in the current user. - Activity manager call to retrieve the MIME type from a content provider now takes a user argument, so it will direct this to the proper user. - The package manager uninstall paths are now implemented around PackageSetting, not PackageParser.Package. This allows them to work even if the application's apk has been removed (in which case it only exists as a PackageSetting, not the PackageParser.Package parsed from the apk). Change-Id: I3522f6fcf32603090bd6e01cc90ce70b6c5aae40
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
2701f325a6d4acd920637d2ff6fd6972a9cf836b |
|
01-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
Merge "Remove Binder.getOrigCallingUid()." into jb-mr1-dev
|
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/ContextImpl.java
|
4120375d46091df8527bb701882e056fbb0e6b06 |
|
31-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Remove Binder.getOrigCallingUid(). Replaced all remaining places that used it with explicit user specification. While doing this, I ran into stuff that was creating PendingIntent objects (that now need to specify the explicit user they are for), which are also posting notifications... but have no way to specify the user for the notification. So the notification manager in the system process now also gets a formal concept of a user associated with the notification, which is passed in to all the necessary aidl calls. I also removed the old deprecated aidl interface for posting/cancelling notifications, since we now always need a user supplied. There is more work that needs to be done here, though. For example I think we need to be able to specify USER_ALL for a notification that should be shown to all users (such as low storage or low battery). Along with that, the PendingIntent creation needs to be tweaked to be able to handle USER_CURRENT by evaluating the user at the point the pending intent is sent. That's for another change, however. Change-Id: I468e14dce8def0e13e0870571e7c31ed32b6310c
/frameworks/base/core/java/android/app/ContextImpl.java
|
5ac72a29593ab9a20337a2225df52bdf4754be02 |
|
30-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Improve multi-user broadcasts. You can now use ALL and CURRENT when sending broadcasts, to specify where the broadcast goes. Sticky broadcasts are now correctly separated per user, and registered receivers are filtered based on the requested target user. New Context APIs for more kinds of sending broadcasts as users. Updating a bunch of system code that sends broadcasts to explicitly specify which user the broadcast goes to. Made a single version of the code for interpreting the requested target user ID that all entries to activity manager (start activity, send broadcast, start service) use. Change-Id: Ie29f02dd5242ef8c8fa56c54593a315cd2574e1c
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
7767eac3232ba2fb9828766813cdb481d6a97584 |
|
24-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Keep track of whether an app is installed for each user. This add a new per-user state for an app, indicating whether it is installed for that user. All system apps are always installed for all users (we still use disable to "uninstall" them). Now when you call into the package manager to install an app, it will only install the app for that user unless you supply a flag saying to install for all users. Only being installed for the user is just the normal install state, but all other users have marked in their state for that app that it is not installed. When you call the package manager APIs for information about apps, uninstalled apps are treated as really being not visible (somewhat more-so than disabled apps), unless you use the GET_UNINSTALLED_PACKAGES flag. If another user calls to install an app that is already installed, just not for them, then the normal install process takes place but in addition that user's installed state is toggled on. The package manager will not send PACKAGE_ADDED, PACKAGE_REMOVED, PACKAGE_REPLACED etc broadcasts to users who don't have a package installed or not being involved in a change in the install state. There are a few things that are not quite right with this -- for example if you go through a full install (with a new apk) of an app for one user who doesn't have it already installed, you will still get the PACKAGED_REPLACED messages even though this is technically the first install for your user. I'm not sure how much of an issue this is. When you call the existing API to uninstall an app, this toggles the installed state of the app for that user to be off. Only if that is the last user user that has the app uinstalled will it actually be removed from the device. Again there is a new flag you can pass in to force the app to be uninstalled for all users. Also fixed issues with cleaning external storage of apps, which was not dealing with multiple users. We now keep track of cleaning each user for each package. Change-Id: I00e66452b149defc08c5e0183fa673f532465ed5
/frameworks/base/core/java/android/app/ContextImpl.java
|
5d1122a3f84e1df80c63aca56310f2cf29bea7dc |
|
23-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Merge "Fix issue #7016987: Unable to attach a picture in gmail/emaill composer action." into jb-mr1-dev
|
f1c26e2fd03e9765fde519e238fc23d4e3d06df2 |
|
23-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #7016987: Unable to attach a picture in gmail/emaill composer action. Change-Id: I0c9336bb072b4622a5eab6d3ec104c4cc38e367a
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.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/ContextImpl.java
|
79af1dd54c16cde063152922b42c96d72ae9eca8 |
|
17-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Switch public APIs to use new UserHandle class for identifying users. Gets rid of "yet another integer" confusion. Change-Id: Id07ea7307aea7c62f0087c6663a1f1c08e2e5dee
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
9630704ed3b265f008a8f64ec60a33cf9dcd3345 |
|
28-Jul-2012 |
Jeff Brown <jeffbrown@google.com> |
Power manager rewrite. The major goal of this rewrite is to make it easier to implement power management policies correctly. According, the new implementation primarily uses state-based rather than event-based triggers for applying changes to the current power state. For example, when an application requests that the proximity sensor be used to manage the screen state (by way of a wake lock), the power manager makes note of the fact that the set of wake locks changed. Then it executes a common update function that recalculates the entire state, first looking at wake locks, then considering user activity, and eventually determining whether the screen should be turned on or off. At this point it may make a request to a component called the DisplayPowerController to asynchronously update the display's powe state. Likewise, DisplayPowerController makes note of the updated power request and schedules its own update function to figure out what needs to be changed. The big benefit of this approach is that it's easy to mutate multiple properties of the power state simultaneously then apply their joint effects together all at once. Transitions between states are detected and resolved by the update in a consistent manner. The new power manager service has is implemented as a set of loosely coupled components. For the most part, information only flows one way through these components (by issuing a request to that component) although some components support sending a message back to indicate when the work has been completed. For example, the DisplayPowerController posts a callback runnable asynchronously to tell the PowerManagerService when the display is ready. An important feature of this approach is that each component neatly encapsulates its state and maintains its own invariants. Moreover, we do not need to worry about deadlocks or awkward mutual exclusion semantics because most of the requests are asynchronous. The benefits of this design are especially apparent in the implementation of the screen on / off and brightness control animations which are able to take advantage of framework features like properties, ObjectAnimator and Choreographer. The screen on / off animation is now the responsibility of the power manager (instead of surface flinger). This change makes it much easier to ensure that the animation is properly coordinated with other power state changes and eliminates the cause of race conditions in the older implementation. The because of the userActivity() function has been changed so that it never wakes the device from sleep. This change removes ambiguity around forcing or disabling user activity for various purposes. To wake the device, use wakeUp(). To put it to sleep, use goToSleep(). Simple. The power manager service interface and API has been significantly simplified and consolidated. Also fixed some inconsistencies related to how the minimum and maximum screen brightness setting was presented in brightness control widgets and enforced behind the scenes. At present the following features are implemented: - Wake locks. - User activity. - Wake up / go to sleep. - Power state broadcasts. - Battery stats and event log notifications. - Dreams. - Proximity screen off. - Animated screen on / off transitions. - Auto-dimming. - Auto-brightness control for the screen backlight with different timeouts for ramping up versus ramping down. - Auto-on when plugged or unplugged. - Stay on when plugged. - Device administration maximum user activity timeout. - Application controlled brightness via window manager. The following features are not yet implemented: - Reduced user activity timeout for the key guard. - Reduced user activity timeout for the phone application. - Coordinating screen on barriers with the window manager. - Preventing auto-rotation during power state changes. - Auto-brightness adjustment setting (feature was disabled in previous version of the power manager service pending an improved UI design so leaving it out for now). - Interpolated brightness control (a proposed new scheme for more compactly specifying auto-brightness levels in config.xml). - Button / keyboard backlight control. - Change window manager to associated WorkSource with KEEP_SCREEN_ON_FLAG wake lock instead of talking directly to the battery stats service. - Optionally support animating screen brightness when turning on/off instead of playing electron beam animation (config_animateScreenLights). Change-Id: I1d7a52e98f0449f76d70bf421f6a7f245957d1d7
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
258848d2ae04f447ff1c18023fa76b139fcc0862 |
|
11-Aug-2012 |
Amith Yamasani <yamasani@google.com> |
User Manager service to manage users and query user details Moved a bunch of methods from PackageManager to UserManager. Fix launching of activities from recents to correct user. Guest creation APIs Change-Id: I0733405e6eb2829675665e225c759d6baa2b708f
/frameworks/base/core/java/android/app/ContextImpl.java
|
8264408f5995534f8e3147b001664ea0df52aaa5 |
|
03-Aug-2012 |
Amith Yamasani <yamasani@google.com> |
Start the correct settings from the status bar. Added a new method to Context: startActivityAsUser() requiring the INTERACT_ACROSS_USERS_FULL permission. Show the correct Recents list, based on current user. Added a getRecentTasksForUser() in ActivityManager. Hidden and requires the INTERACT_ACROSS_USERS_FULL permission. Change-Id: If5b56465efdd3ead36601a3b51ed4af157bbf35c
/frameworks/base/core/java/android/app/ContextImpl.java
|
7d19e0242faac8017033dabb872cdf1542fa184c |
|
08-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
More mult-user API work. - You can now use android:singleUser with receivers and providers. - New API to send ordered broadcasts as a user. - New Process.myUserHandle() API. For now I am trying out "user handle" as the name for the numbers representing users. Change-Id: I754c713ab172494bb4251bc7a37a17324a2e235e
/frameworks/base/core/java/android/app/ContextImpl.java
|
b4163a6e12ee7100c758c6d3d062ade1f2843fce |
|
03-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Add APIs for interacting across users. - Expose the existing Context.sendBroadcast() as Context.sendBroadcastAsUser(). - Add new android:singleUser attribute for services. - Add new INTERACT_ACROSS_USERS_FULL permission for full system-level access to cross-user interface (allows sendBroadcastAsUser() to send to any receiver). - Add new INTERACT_ACROSS_USERS_FULL permission for more restricted cross-user interaction: this is required for android:singleUser, and allows you to use sendBroadcastAsUser() but only to send to your own receivers. Change-Id: I0de88f6718e9505f4de72e3f45d29c0f503b76e9
/frameworks/base/core/java/android/app/ContextImpl.java
|
fa25bf5382467b1018bd9af7f1cb30a23d7d59f7 |
|
24-Jul-2012 |
Jeff Brown <jeffbrown@google.com> |
Add display manager skeleton. The purpose of this change is to remove direct reliance on SurfaceFlinger for describing the size and characteristics of displays. This patch also starts to make a distinction between logical displays and physical display devices. Currently, the window manager owns the concept of a logical display whereas the new display manager owns the concept of a physical display device. Change-Id: I7e0761f83f033be6c06fd1041280c21500bcabc0
/frameworks/base/core/java/android/app/ContextImpl.java
|
cba4d388201958449ca96d49a8a277ca0f47cf8d |
|
25-Jul-2012 |
Irfan Sheriff <isheriff@google.com> |
Merge "Update WifiManager API"
|
88759bbd31e05a4163e1f8e72804ca83000afd53 |
|
03-Jul-2012 |
Irfan Sheriff <isheriff@google.com> |
Update WifiManager API Use feedback based on NSD to update WifiManager API Change-Id: I0c1dc74f7e2fa7cd697a995b7194e3e0366d7981
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
3a6794cad739c2b6fcc9b3fc6c4461f88728af8a |
|
17-Jul-2012 |
Matthew Xie <mattx@google.com> |
Merge "Changes to Bluetooth Service structure."
|
e0fd693c6098f59004f9e96ad75c058e26c337b0 |
|
11-Jul-2012 |
Nick Pelly <npelly@google.com> |
Improve geofencing: throttle location updates with distance to fence. Previously any geofence (proximity alert) would turn the GPS on at full rate. Now, we modify the GPS interval with the distance to the nearest geofence. A speed of 100m/s is assumed to calculate the next GPS update. Also o Major refactor of geofencing code, to make it easier to continue to improve. o Discard proximity alerts when an app is removed. o Misc cleanup of nearby code. There are other upcoming changes that make this a good time for some house-keeping. TODO: The new geofencing heuristics are much better than before, but still relatively naive. The next steps could be: - Improve boundary detection - Improve update thottling for large geofences - Consider velocity when throttling Change-Id: Ie6e23d2cb2b931eba5d2a2fc759543bb96e2f7d0
/frameworks/base/core/java/android/app/ContextImpl.java
|
1abb1cb3a8fe17f7866150604c2fd73751da787e |
|
26-Jan-2012 |
Jaikumar Ganesh <jaikumar@google.com> |
Changes to Bluetooth Service structure. Changes to make Bluetooth Service part of the system_service. These changes may be temporary. Changes to update to the new disable API. Change-Id: If89dba17e6e6c6daa53c37684221763a2da076e9 Conflicts: services/java/com/android/server/pm/PackageManagerService.java
/frameworks/base/core/java/android/app/ContextImpl.java
|
f8fd7ef97895524a0ce5735e19654549cb295cda |
|
19-Jun-2012 |
Christopher Tate <ctate@google.com> |
Merge "Fail immediately if bindService() is passed a null ServiceConnection"
|
79b3317b775810bac088b0998c48eb6506e2578c |
|
18-Jun-2012 |
Christopher Tate <ctate@google.com> |
Fail immediately if bindService() is passed a null ServiceConnection Or if unbindService() is passed one, naturally. Change-Id: Ib7f1f0b5e12c04e3affbcc9008612801081819d5
/frameworks/base/core/java/android/app/ContextImpl.java
|
b58b8f832d06b0ffa8886eba5a4916578a3b8743 |
|
12-Jun-2012 |
Dianne Hackborn <hackbod@google.com> |
Rework media router to be per-context with global process state. Change-Id: Ic1cb6f13e691d22783bcdafae85b7c75aec0a66f
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.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/ContextImpl.java
|
22af38c5261d2c03796b496e6edb125327cace16 |
|
04-May-2012 |
Irfan Sheriff <isheriff@google.com> |
API review fixes - Remove the notion of channel from an application perspective - Remove the use of DnsSd as part of API and add a protocol type to allow future extensions - Use the listener object as a handler for stop and unregister operations. Also, we now allow multiple active discovery operations. - Remove init/deinit operations in favour of setting up construction Bug:6434844 Change-Id: Id15521d571aac9c4053d81184ad66dfc54f636de
/frameworks/base/core/java/android/app/ContextImpl.java
|
816e4f758302aaf3b115b5914d48732ed78af946 |
|
23-Apr-2012 |
Jeff Sharkey <jsharkey@android.com> |
System context should inherit base package name. Otherwise registerReceiver() from views inflated with the returned context will throw (like DateTimeView). Bug: 6376149 Change-Id: I038a680e49fba81bbebfc8c0c94f15e7cd072f33
/frameworks/base/core/java/android/app/ContextImpl.java
|
25157e458d6e10b027d1ba6b78b0487156c9f57a |
|
16-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Refactor SensorManager to move non-API bits into a subclass. Changed the SensorManager class so that it only contains API-related bits including what's needed to support legacy sensors. Mostly just moved stuff around. Making the class abstract is safe because it does not have a visible constructor in the API. One minor change is that the cache of sensor type to sensor lists is now per instance of SensorManager instead of being static. We can fix this if desired. Another small change is that we bail out early from registerListener if the listener has already been registered for the particular sensor. This happened for both legacy and standard listeners. The problem is that the ListenerDelegate maintains two lists of sensors, one is a Map and the other is a List. Adding a sensor twice causes one entry to be added to the Map and two entries to be added to the List, but when the sensor is removed the next time, only one entry is removed from the List, leaving it in an inconsistent state. Removed Sensor.getLegacyType() since the value it provides is only needed in LegacyListener and we don't really save any significant computation by caching it. Removing the field makes support for legacy sensors a little more self-contained. Bug: 6339552 Change-Id: I50d41ac97cf535924f2bfa2026d28547a4d00286
/frameworks/base/core/java/android/app/ContextImpl.java
|
c2346134bb519a54d50655cbef940fc3fdec60a9 |
|
13-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Extract Vibrator implementation from interface. Moved the core logic of Vibrator into SystemVibrator, potentially allowing for the creation of other Vibrator subclasses. Fixed several places where we were creating new Vibrator instances unnecessarily instead of getting it from the Context. It is safe to make Vibrator abstract because its constructor was hidden from the SDK so it was not possible to subclass it. Bug: 6334179 Change-Id: I18ece6544c26a7efb2d5099f8346a10aef8a5e18
/frameworks/base/core/java/android/app/ContextImpl.java
|
9f25b7fdf216c9ef0bd2322cd223eeaf0d60f77f |
|
10-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Request key maps from input manager service. Instead of each application loading the KeyCharacterMap from the file system, get them from the input manager service as part of the InputDevice object. Refactored InputManager to be a proper singleton instead of having a bunch of static methods. InputManager now maintains a cache of all InputDevice objects that it has loaded. Currently we never invalidate the cache which can cause InputDevice to return stale motion ranges if the device is reconfigured. This will be fixed in a future change. Added a fake InputDevice with ID -1 to represent the virtual keyboard. Change-Id: If7a695839ad0972317a5aab89e9d1e42ace28eb7
/frameworks/base/core/java/android/app/ContextImpl.java
|
ac14351e16e1258f1cb54e2bf772b8be004eb2b8 |
|
06-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Move some APIs from window manager to input manager. Simplified input injection API down to just one call. Removed all input state reading API. It was only used by the window manager policy and required a permission that applications could not obtain. READ_INPUT_STATE is now unused and deprecated. Change-Id: I41278141586ddee9468cae0fb59ff0dced6cbc00
/frameworks/base/core/java/android/app/ContextImpl.java
|
23b871d7147de910b53646cdb987e28dac0df927 |
|
06-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Merge "Initial commit of InputManager and keyboard layout API."
|
9df6e7a926ce480baf70e97ee1b9ea387193f6ad |
|
05-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Initial commit of InputManager and keyboard layout API. Added a new InputManager service for interacting with input devices and configuring them. This will be the focus of an upcoming refactoring. Added an API for registering keyboard layouts with the system based on the use of a broadcast receiver. Applications can register their own keyboard layouts simply by declaring a broadcast receiver in their manifests. Added the skeleton of a package that will ultimately contain the keyboard layouts and other input device related resources that are part of the base system. Bug: 6110399 Change-Id: Ie01b0ef4adbd5198f6f012e73964bdef3c51805c
/frameworks/base/core/java/android/app/ContextImpl.java
|
7d024d372431effc87168afdc7cbe387680c4935 |
|
23-Mar-2012 |
Irfan Sheriff <isheriff@google.com> |
Add initial framework for DNS service discovery Change-Id: I53c0b7ebfd75e520ebb7553612f1aa8413b6b79b
/frameworks/base/core/java/android/app/ContextImpl.java
|
47847f3f4dcf2a0dbea0bc0e4f02528e21d37a88 |
|
23-Mar-2012 |
Jeff Brown <jeffbrown@google.com> |
Support enabling WAL using a flag when DB is opened. Using enableWriteAheadLogging() to enable WAL is inefficient because we previously disabled WAL mode when the database was opened. Switching from WAL to PERSIST then back to WAL is inefficient and could slow down application launch time. It would be better to leave the database in WAL mode when we open it to begin with. To do that, we need to know ahead of time whether we will want to have WAL enabled for the newly opened database. Using this flag also reduces the chance that we will encounter an error enabling WAL mode due to there being other open connections to the database. Bug: 6124556 Change-Id: I38ec7a528baeda9f1ef77e25e88b3ca4b6296200
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
79087e4b967d8af26c488c41b8c1a087a12da84d |
|
02-Mar-2012 |
Jeff Brown <jeffbrown@google.com> |
Add an API for deleting databases. Add SQLiteDatabase.deleteDatabase to delete a database and all of its auxiliary files. This method is also used by Context.deleteDatabase and resolves issues where auxiliary files would get left behind. Bug: 5972489 Change-Id: I3633b9b4978972a1d240ac0a9861420ecf989149
/frameworks/base/core/java/android/app/ContextImpl.java
|
67cf7d314b5b94db1a9f1c57140b6615b0ea8291 |
|
16-Feb-2012 |
Amith Yamasani <yamasani@google.com> |
Fix Power Control widget Some changes in AppWidgetService were interfering with widget permissions. Added some hidden methods in Context to communicate the requesting user information instead of using the calling uid. Bug: 6019296 Change-Id: I5e519fd3fbbfa5b3fcc5c297b729c671dac8e7c7
/frameworks/base/core/java/android/app/ContextImpl.java
|
37ce3a8af6faab675319d0803b288ab1dddc76be |
|
06-Feb-2012 |
Amith Yamasani <yamasani@google.com> |
Multi-user - wallpaper service - Allow each user to have their own wallpaper (live or static). - Migrate old wallpaper on upgrade. - Update SystemBackupAgent to backup/restore from primary user's new wallpaper directory. Reduce dependency on Binder.getOrigCallingUser() by passing the userId for bindService. Change-Id: I19c8c3296d3d2efa7f28f951d4b84407489e2166
/frameworks/base/core/java/android/app/ContextImpl.java
|
b01e8bf57b7492b77e3445db51471edcbadda75e |
|
30-Aug-2011 |
Mike Lockwood <lockwood@android.com> |
New Serial Manager API: SerialManager: provides access to serial ports SerialPort: for reading and writing data to and from serial ports IO with both array based and direct ByteBuffers is supported. Accessing serial ports requires android.permission.SERIAL_PORT permission Each platform must configure list of supported serial ports in the config_serialPorts resource overlay (this is needed to prevent apps from accidentally accessing the bluetooth or other system UARTs). In addition, the platform uevent.rc file must set the owner to the /dev/tty* files to "system" so the framework can access the port. Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.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/ContextImpl.java
|
6e90a362bc66cc67b1beae27b21d3f0148403b08 |
|
15-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5159736 - Make DeviceDefault the default Have the framework refer to the DeviceDefault themes for ICS apps that don't explicitly request another theme. Change-Id: I27dd0bbaa60f71df4f36e47d260f556d923ba075
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
55bc5f3e0408bcb5a39a6732de0b2d1aa99a55be |
|
24-Jun-2011 |
repo sync <isheriff@google.com> |
Updated: Wi-Fi p2p framework First stage. Get the bones in right now even though we are not ready on the native side. Once, we have things underneath working - we will further update the framework Change-Id: I4a7dab5cd4267373dc5f8989ae4122f91c384ed5
/frameworks/base/core/java/android/app/ContextImpl.java
|
988323c57bd25a58f05dfa492d9b9c8ab62c5153 |
|
22-Jun-2011 |
satok <satok@google.com> |
Create TextServiceManager and SpellCheckerService Bug: 4176026 This CL inherits https://android-git.corp.google.com/g/112600 Spec of TextServiceManager - Chooses the most applicable TextService(e.g. SpellCheckerService, WordBreakIteratorService..) for each locale Spec of SpellCheckerService - Returns whether the given string is a correct word or not - Returns Suggestions for the given string Change-Id: Iaa425c7915fe70767ad0b17bf6c6fbcd2a1200b2
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
6c418d585e0a91054b168fde3130188afd006c98 |
|
29-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #4902856: Don't let apps register non-explicit PendingIntents Location manager now checks for such intents, and logs a warning when they are given to it. Nothing thrown yet, it needs to check the targetSdkVersion of the caller somehow. When sending the pending intent, we require that the recipient hold the appropriate permission. This should pretty much close the security hole. Includes a bunch of infrastructure in the activity manager needed to support all this. Change-Id: I4dba7a98a7b8bbb9e347666451aa9cb1efad1848
/frameworks/base/core/java/android/app/ContextImpl.java
|
8969d9924c662ab4cdacc342bbdc33756db730be |
|
22-Jun-2011 |
satok <satok@google.com> |
Revert "Create TextServiceManager and SpellCheckerService" This reverts commit eaddb894865a804279659b4aad6364a34ab50beb.
/frameworks/base/core/java/android/app/ContextImpl.java
|
eaddb894865a804279659b4aad6364a34ab50beb |
|
01-Jun-2011 |
satok <satok@google.com> |
Create TextServiceManager and SpellCheckerService Bug: 4176026 Spec of TextServiceManager - Chooses the most applicable TextService(e.g. SpellCheckerService, WordBreakIteratorService..) for each locale Spec of SpellCheckerService - Returns whether the given string is a correct word or not - Returns Suggestions for the given string Change-Id: Ia25e7b4f308778891929e31b8cbd741f6848cce4
/frameworks/base/core/java/android/app/ContextImpl.java
|
1a303953589fdddf21d88b8fa660136f5b060d0d |
|
16-Jun-2011 |
Jeff Sharkey <jsharkey@android.com> |
DownloadManager flags for network policy. Handful of DownloadManager flags to record when a download was paused because of NetworkPolicyManager rules. Change-Id: I99fc47f529cb6c8a42dbeca049e0cd0f1556eac4
/frameworks/base/core/java/android/app/ContextImpl.java
|
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/ContextImpl.java
|
81e56d535c853d73ff537357da5b935f51cb779d |
|
26-May-2011 |
Dianne Hackborn <hackbod@google.com> |
Rework how we decide whether to use system or status bar. The PhoneWindowManager is now responsible for determing this, since it needs to do this before we can generate the configuration since we need to take into account the system bar size we will use. Also the Display should now report the screen height without including the system bar. Change-Id: I82dfcc5e327e4d13d82c373c6c870f557a99b757
/frameworks/base/core/java/android/app/ContextImpl.java
|
5be8de3420ba4c9d816b98e29bdec11715f6b626 |
|
25-May-2011 |
Dianne Hackborn <hackbod@google.com> |
More compatibility mode improvements. We now correctly adjust display metrics, fixing for example issues seen in Barcode Scanner. In addition the decision about when to use compatibility mode has a bug fixed where certain apps would not go out of compatibility mode even though they should be able to. Change-Id: I5971206323df0f11ce653d1c790c700f457f0582
/frameworks/base/core/java/android/app/ContextImpl.java
|
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/ContextImpl.java
|
3a68b8338b431eb15d28e92f06452efbbda9493e |
|
08-Mar-2011 |
Mike Lockwood <lockwood@android.com> |
USB: Add API and dialog for apps to request permissions for USB devices and accessories New APIs: UsbManager.hasPermission returns true if the caller has permission for the given device or accessory UsbManager.requestPermission poses a dialog to allow the user to give the caller permission for the device or accessory. Result is returned via a PendingIntent. No dialog is displayed if the caller already has permission. Also moved UsbResolverActivity to SystemUI package BUG: 4069037 Change-Id: I93be769501a8776b49ac26e468af19f8fa2114c9
/frameworks/base/core/java/android/app/ContextImpl.java
|
c4308f01c965571dc2354107c3574df113e397ee |
|
01-Mar-2011 |
Mike Lockwood <lockwood@android.com> |
Move USB framework support from android.hardware to android.hardware.usb package Change-Id: I00fd4f0caaa4aebe48f71c576bb211b5f38bf88d Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/core/java/android/app/ContextImpl.java
|
e7d511e148bc901ef41ac44d7b3593e5d803f72f |
|
30-Dec-2010 |
Mike Lockwood <lockwood@android.com> |
New APIs for USB host support: UsbManager: - is now a service retrievable via Context.getSystemService(Context.USB_SERVICE). - provides support for returning a list all connected USB devices - broadcasts ACTION_USB_DEVICE_ATTACHED and USB_DEVICE_DETACHED when devices are added and removed from the USB host bus UsbDevice: - represents an attached USB device. UsbInterface: - represents an interface on a USB device - devices may have multiple interfaces if they provide multiple sets of functionality (for example, android phones typically have interfaces for both USB mass storage and adb) UsbEndpoint: - represents an endpoint on a USB interface - endpoints are used for sending or receiving data (only in one or the other direction) UsbRequest: - encapsulates a send or receive request to be sent over an endpoint Change-Id: Ieef3e434c62760770ea839070cf5eba1a705967a Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/core/java/android/app/ContextImpl.java
|
805fd7ee0e5dc2939e85c84f78d9890a51982bc0 |
|
17-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
Add API to get path to OBBs. Also hide the bitmap thumbnail stuff, we can't support it in its current form. And fix some bugs with propagating paths to native code. Yikes! Change-Id: I13ab37ddbdba5c073489cba5eab035117d3c1574
/frameworks/base/core/java/android/app/ContextImpl.java
|
d922ae01ca99a2b6d39a9393f86776a1d10ebd14 |
|
14-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
Add Holo theme for IMEs. Also clean up theme selection code to get rid of duplication. Change-Id: Idf7b21db70ee83fce24756ead877169bd08b77a9
/frameworks/base/core/java/android/app/ContextImpl.java
|
247fe74c934cb3fba85aae7e051a8044f460fb11 |
|
09-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
Implement issue # 3255887 could CursorLoader offer... ...to throttle contentobserver-based requeries Why yes, I guess it could. This also reworks AsyncTaskLoader to not generate multiple concurrent tasks if it is getting change notifications before the last background task is complete. And removes some of the old APIs that had been deprecated but need to be gone for final release. And fixes a few little problems with applying the wrong theme in system code. Change-Id: Ic7a665b666d0fb9d348e5f23595532191065884f
/frameworks/base/core/java/android/app/ContextImpl.java
|
4e920f70f38d52d3a74c6a3133388a2e2cb6c175 |
|
14-Dec-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Add MODE_MULTI_PROCESS flag to Context.getSharedPreferences() Also, changes to make this testable with CTS: -- special PENALTY_DEATH StrictMode fast path that doesn't use the Looper idling to "time" the violation. Only used when death is the only violation, -- make PENALTY_DEATH throw a RuntimeException instead of killing its process with a signal. this means we can catch it in CTS tests, but it's also more consistent with PENALTY_NETWORK_DEATH in Honeycomb. -- make FileUtils.getFileStatus() invoke StrictMode, which isn't (yet?) aware of I/O in native code. so help it out. CTS test for MODE_MULTI_PROCESS is in I6154edab Change-Id: Icf93f9dfb0ece06b16781e4803dd2c17df3cf1b3
/frameworks/base/core/java/android/app/ContextImpl.java
|
d250746716305717d7cde64032d2d25cda14e6c9 |
|
13-Dec-2010 |
Nick Pelly <npelly@google.com> |
resolved conflicts for merge of 1d0d1188 to master Change-Id: I80413d5a54a0284ab6f685c4c6197a2c009ea717
|
1d0d1188d71ed086b3910cfe1d244fdeee47f182 |
|
11-Dec-2010 |
Nick Pelly <npelly@google.com> |
am ae56a851: Merge "Make getSystemService(NFC_SERVICE) the NFC entry point." into gingerbread * commit 'ae56a851624c2b2e78da8a2c339d2caa64c4f981': Make getSystemService(NFC_SERVICE) the NFC entry point.
|
50b4d8f643f31b37e9872f562fb869059cf79c8a |
|
08-Dec-2010 |
Nick Pelly <npelly@google.com> |
Make getSystemService(NFC_SERVICE) the NFC entry point. This gives NFC service a handle to the application context. Deprecate NfcAdapter.getDefaultAdapter(), it does not provide a context. Using this method will print a warning, and will later throw an exception if a method that requires a context is called. No 2.3 API's will fail, but new API's that do require a context might fail. Also add helper NfcAdapter.getDefaultAdapter(Context). Change-Id: I9a6378de4ef4b61ad922f8d53e64e2a1a1d5d60c
/frameworks/base/core/java/android/app/ContextImpl.java
|
4cd50b8d76e08d75df1a2e9d4902bcdc880bd1c1 |
|
02-Dec-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Make getSharedPreference() async, blocking on first access. Bug: 3177046 Change-Id: Ibc36a1e196afd39c4f9da513a2bf4ba9e2c72177
/frameworks/base/core/java/android/app/ContextImpl.java
|
7e5cd7968356ea111988a372095e352d76476994 |
|
01-Dec-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am 981a72a1: Merge "[don\'t auto-merge] Don\'t re-read SharedPreferences unnecessarily." into gingerbread * commit '981a72a1506f7e6e42747b9aa0be2001795c6619': [don't auto-merge] Don't re-read SharedPreferences unnecessarily.
|
d2bbaaf2948c362e82aa9f1c8e02a6092235c021 |
|
30-Nov-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
[don't auto-merge] Don't re-read SharedPreferences unnecessarily. Bug: 3211034 Bug: 3216290 Change-Id: Idd5cc25965d400f20122372ca1cf47d4703dd87c
/frameworks/base/core/java/android/app/ContextImpl.java
|
621e17de87f18003aba2dedb719a2941020a7902 |
|
23-Nov-2010 |
Dianne Hackborn <hackbod@google.com> |
Implement issue #3221502: New APIs to support new back stack / task navigation What this adds: - A new Intent activity flag to completely replace an existing task. - A new Intent activity flag to bring the current home task up behind a new task being started/brought to the foreground. - New versions of startActivity() that take an array of Intents to be started, allowing applications to start a task in a specific state. - A public moveTaskToFront() method on ActivityManager, with a new flag that allows the caller to have the task moved to the front with the current home task immediately behind it. Change-Id: Ie8028d09acffb5349d98043c67676daba09f75c8
/frameworks/base/core/java/android/app/ContextImpl.java
|
5913630ec9686f4640a90b6872318e11fb5d9120 |
|
20-Nov-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Don't re-read SharedPreferences unnecessarily. Previously reads were only cached once a write occurred because loading didn't set the stat metadata, thus the sp.hasFileChangedUnexpectedly() check always fired on reading. Now the initial read populates the stat info, so getSharedPreference() repeatedly bypasses reading from disk, even wtihout writes. This was probably a regression from apply() being added in Gingerbread. Bug: 3211034 Change-Id: Ifa0bbb27c53a4099544950a4f822fab1fc23a47d
/frameworks/base/core/java/android/app/ContextImpl.java
|
224ba0cd065075718947844b117c9fe50a2d9993 |
|
12-Nov-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Clean up, de-dup, and speed up ContextImpl getSystemService() Bug: 3191436 Change-Id: I343adc016e02d0414b2d48a14e5e62a5cccb7899
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
d3da44032084b6dd280487280553dcdbd7933e3e |
|
10-Nov-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Move SharedPreferencesImpl out of ContextImpl.java Change-Id: I3a58ec4c9501e906c133e841b5c5ec6bced04a02
/frameworks/base/core/java/android/app/ContextImpl.java
|
ec062f63a2f5fb49f825544da348e594dbf5bf3c |
|
03-Nov-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
StrictMode: now in more system server threads. Who knew there were so many Loopers in the system server? This adds dropbox logging for the activity manager thread, policy thread, and window manager thread. The goal's to catch more stuttering. Change-Id: I999a6ff4a955f0ef549b12a38796b843ade5fe66
/frameworks/base/core/java/android/app/ContextImpl.java
|
170e548ac839b268beee208e95fc497b34fde1ba |
|
29-Oct-2010 |
Joe Onorato <joeo@google.com> |
use the holo theme in more places for >= honeycomb apps Change-Id: Iad2bd65eaf203df458ea689144538b7a51beb4b3
/frameworks/base/core/java/android/app/ContextImpl.java
|
875ecaa511ce36c8044ccdf48ee2a3e69dd633fe |
|
18-Oct-2010 |
Dianne Hackborn <hackbod@google.com> |
am 13e46665: am 736f5ec4: Merge "Work on issue #3101415: Crespo apps seem to have their UID changed over time." into gingerbread Merge commit '13e46665ff69c1a37880762d7d611aacdf02dac7' * commit '13e46665ff69c1a37880762d7d611aacdf02dac7': Work on issue #3101415: Crespo apps seem to have their UID changed over time.
|
13e46665ff69c1a37880762d7d611aacdf02dac7 |
|
16-Oct-2010 |
Dianne Hackborn <hackbod@google.com> |
am 736f5ec4: Merge "Work on issue #3101415: Crespo apps seem to have their UID changed over time." into gingerbread Merge commit '736f5ec476526f3431d81dec5fb695bdee27e21a' into gingerbread-plus-aosp * commit '736f5ec476526f3431d81dec5fb695bdee27e21a': Work on issue #3101415: Crespo apps seem to have their UID changed over time.
|
8bdf5935c0db4a66ab33a10b43398d2523cfa15d |
|
15-Oct-2010 |
Dianne Hackborn <hackbod@google.com> |
Work on issue #3101415: Crespo apps seem to have their UID changed over time. fsync! Change-Id: Ie6c5397202579935ac69bf61d3e7b3081ecf269c
/frameworks/base/core/java/android/app/ContextImpl.java
|
f36c6db108364dea89b1e3c27c0b15103e560d87 |
|
15-Oct-2010 |
Nick Pelly <npelly@google.com> |
NFC API revision round 2. - Add the second half of the new NFC API: NfcAdapter, Tag, NdefTag, RawTagConnection, NdefTagConnection. - Add implementations for all of the new NFC API. Change-Id: I8da9fd1d2971ed2c8b76f2a93f207fa9e305b0f6 Signed-off-by: Nick Pelly <npelly@google.com> Conflicts: Android.mk CleanSpec.mk core/java/android/app/ContextImpl.java
/frameworks/base/core/java/android/app/ContextImpl.java
|
6066da89a464d2bd5f002f5e687d40876ed5ce21 |
|
13-Oct-2010 |
Nick Pelly <npelly@google.com> |
am 590b73bc: NFC API revision round 2. Merge commit '590b73bc5b8e5f7b59bff1d9264a52388a5162e6' into gingerbread-plus-aosp * commit '590b73bc5b8e5f7b59bff1d9264a52388a5162e6': NFC API revision round 2.
|
590b73bc5b8e5f7b59bff1d9264a52388a5162e6 |
|
12-Oct-2010 |
Nick Pelly <npelly@google.com> |
NFC API revision round 2. - Add the second half of the new NFC API: NfcAdapter, Tag, NdefTag, RawTagConnection, NdefTagConnection. - Add implementations for all of the new NFC API. Change-Id: I8da9fd1d2971ed2c8b76f2a93f207fa9e305b0f6 Signed-off-by: Nick Pelly <npelly@google.com>
/frameworks/base/core/java/android/app/ContextImpl.java
|
764437aa9e9af4990969ea5124115f3df7fb1ec1 |
|
11-Oct-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am 4216c3c3: am a4682ed7: Merge "Minor SharedPreference clean-up." into gingerbread Merge commit '4216c3c3f75c6bd7ffa9a9279961f9ea6aa57635' * commit '4216c3c3f75c6bd7ffa9a9279961f9ea6aa57635': Minor SharedPreference clean-up.
|
38051bc01878286afd6d163079dca20600c24d01 |
|
10-Oct-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am 6a15f0d7: am 6275dbbe: Merge "Quiet unnecessary debug logging." into gingerbread Merge commit '6a15f0d7c7ed74e086f4d3a7014ed724a2b18023' * commit '6a15f0d7c7ed74e086f4d3a7014ed724a2b18023': Quiet unnecessary debug logging.
|
4216c3c3f75c6bd7ffa9a9279961f9ea6aa57635 |
|
09-Oct-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am a4682ed7: Merge "Minor SharedPreference clean-up." into gingerbread Merge commit 'a4682ed7547e895605d102ab17fc5c134b4ab38f' into gingerbread-plus-aosp * commit 'a4682ed7547e895605d102ab17fc5c134b4ab38f': Minor SharedPreference clean-up.
|
9acdeb99c5102f89a9a73eb4d62e38e7ac86e01c |
|
09-Oct-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Minor SharedPreference clean-up. Make a member final, line up some comments, and also cache the expected stat size, not just the mtime. Change-Id: Ifcc37bd3ab99787280e506deb682200a16da512e
/frameworks/base/core/java/android/app/ContextImpl.java
|
6a15f0d7c7ed74e086f4d3a7014ed724a2b18023 |
|
07-Oct-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am 6275dbbe: Merge "Quiet unnecessary debug logging." into gingerbread Merge commit '6275dbbea8ad7bde984a362516654004e111dc67' into gingerbread-plus-aosp * commit '6275dbbea8ad7bde984a362516654004e111dc67': Quiet unnecessary debug logging.
|
90bc5ee02bd91c138f88180879c6ef748a578f47 |
|
07-Oct-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Quiet unnecessary debug logging. Change-Id: I46d8aff5790db371d60b2066acbbdd55cfad8074
/frameworks/base/core/java/android/app/ContextImpl.java
|
4715bd91f5949a1919156a5a5cb50f0cccda645e |
|
29-Sep-2010 |
Nick Pelly <npelly@google.com> |
resolved conflicts for merge of f4c3b7e9 to master Change-Id: Idcdc521144f3072058b2bb6cb383e42c852e64f4
|
f4c3b7e916b417fabb468ec0a565dc79cd7ba2b3 |
|
29-Sep-2010 |
Nick Pelly <npelly@google.com> |
am 038cabe0: NFC integration Merge commit '038cabe0247ee46df62f9363f1a303bc5b9c1028' into gingerbread-plus-aosp * commit '038cabe0247ee46df62f9363f1a303bc5b9c1028': NFC integration
|
038cabe0247ee46df62f9363f1a303bc5b9c1028 |
|
24-Sep-2010 |
Nick Pelly <npelly@google.com> |
NFC integration Source: Trusted_NFC_Device_Host_AA03.01e02_google.zip code drop (23-Sep-2010) Conflicts: core/java/android/app/ApplicationContext.java core/java/android/provider/Settings.java core/jni/Android.mk core/jni/AndroidRuntime.cpp core/res/AndroidManifest.xml include/utils/Asset.h Change-Id: I62c92f4c79f5ee65126c97602f6bc1c15794e573 Signed-off-by: Nick Pelly <npelly@google.com>
/frameworks/base/core/java/android/app/ContextImpl.java
|
d58429f9acdb33f05bdb233b7bba495de80cb336 |
|
28-Sep-2010 |
Steve Howard <showard@google.com> |
Manual merge: Move DownloadManager to android.app Changing package at hackbod's request. Change-Id: I867017b6a9f4684d30c6c5bd1b07f9cabecddb9f
/frameworks/base/core/java/android/app/ContextImpl.java
|
9d9719c44ad05834b48542ea0fc4edbb4f59c311 |
|
28-Sep-2010 |
Steve Howard <showard@google.com> |
am 5bdb89d7: Merge "Move DownloadManager to android.app (DO NOT MERGE)" into gingerbread Merge commit '5bdb89d7ac20d4d3e71660d7fe78002a63900399' into gingerbread-plus-aosp * commit '5bdb89d7ac20d4d3e71660d7fe78002a63900399': Move DownloadManager to android.app (DO NOT MERGE)
|
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/ContextImpl.java
|
31fd85f39b554e09b2e6c1c2ccf5c186859880fa |
|
28-Sep-2010 |
Steve Howard <showard@google.com> |
Move DownloadManager to android.app (DO NOT MERGE) Changing package at hackbod's request. I'll merge this manually, as there's some additional master-only code that will be to be simultaneously changed. Change-Id: Ibb629ec1c31807fbee31e0193c6a941d04be0117
/frameworks/base/core/java/android/app/ContextImpl.java
|
c63806d852a550d82bbe6cadff8a2139d78ed559 |
|
24-Sep-2010 |
Adam Powell <adamp@google.com> |
Holo themes and assets in progress Change-Id: Ic10480dc1c771d0ccd10f1d4014c945480fd6c0d
/frameworks/base/core/java/android/app/ContextImpl.java
|
a8bce7c8acb3904eb69bf21276c0ca2635c76a20 |
|
27-Sep-2010 |
Dianne Hackborn <hackbod@google.com> |
am d8691d73: Merge "Allow all apps to call ContentResolver.getType()." into gingerbread Merge commit 'd8691d73d158acd9ffc63748126e822afd656707' into gingerbread-plus-aosp * commit 'd8691d73d158acd9ffc63748126e822afd656707': Allow all apps to call ContentResolver.getType().
|
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/ContextImpl.java
|
0486f78ef32dfddb51c82f12be533712a35376d8 |
|
08-Sep-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am b1657b2b: resolved conflicts for merge of 64591009 to gingerbread-plus-aosp Merge commit 'b1657b2bd6aea0c22b48e2cdd25dcc57581a3f3d' * commit 'b1657b2bd6aea0c22b48e2cdd25dcc57581a3f3d': Fix a race between requesting/loading/writing SharedPreferences.
|
b1657b2bd6aea0c22b48e2cdd25dcc57581a3f3d |
|
08-Sep-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
resolved conflicts for merge of 64591009 to gingerbread-plus-aosp Change-Id: Id9ebca9993f97a79cb2a6c41a7566d473ccc5b7e
|
6194c53754e1bae2c09267ad474d4e2f376e34c0 |
|
08-Sep-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Fix a race between requesting/loading/writing SharedPreferences. Part of the race existed before, but it was made much worse with apply(). Corresponding CTS test is Icc6e638a6a Change-Id: Ic5cfa467fb7f1859cb7b44d417412219c0621965
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
2394c164a76f6d3f8ad9f1c1517f58f72adab9d7 |
|
01-Sep-2010 |
Dianne Hackborn <hackbod@google.com> |
am ec438e14: am 361199b5: Add PackageManager API to get information about a provider component. Merge commit 'ec438e1448ebc578ee5a4c4beb1e26292cdedd6e' * commit 'ec438e1448ebc578ee5a4c4beb1e26292cdedd6e': Add PackageManager API to get information about a provider component.
|
ec438e1448ebc578ee5a4c4beb1e26292cdedd6e |
|
01-Sep-2010 |
Dianne Hackborn <hackbod@google.com> |
am 361199b5: Add PackageManager API to get information about a provider component. Merge commit '361199b5e742c6635d4d7a03de6cf37b31cf442c' into gingerbread-plus-aosp * commit '361199b5e742c6635d4d7a03de6cf37b31cf442c': Add PackageManager API to get information about a provider component.
|
361199b5e742c6635d4d7a03de6cf37b31cf442c |
|
31-Aug-2010 |
Dianne Hackborn <hackbod@google.com> |
Add PackageManager API to get information about a provider component. Kind-of useful when all you have is a ComponentName. Change-Id: I9a99f12daabb29e97e882e09c43ca0df70c00651
/frameworks/base/core/java/android/app/ContextImpl.java
|
02f4f0eb4919453e8dbf40549d4ae9c05f05b8dd |
|
31-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am 734d2707: am bb660d7e: Merge "Renaming SharedPreferences.startCommit to apply" into gingerbread Merge commit '734d270769c609c7d3a1f2ec46e1d329d9682ab4' * commit '734d270769c609c7d3a1f2ec46e1d329d9682ab4': Renaming SharedPreferences$Editor.startCommit to apply
|
734d270769c609c7d3a1f2ec46e1d329d9682ab4 |
|
31-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am bb660d7e: Merge "Renaming SharedPreferences.startCommit to apply" into gingerbread Merge commit 'bb660d7e1bed3a07a1804bd9641d9634bfaa4972' into gingerbread-plus-aosp * commit 'bb660d7e1bed3a07a1804bd9641d9634bfaa4972': Renaming SharedPreferences$Editor.startCommit to apply
|
66fce5068a8a3aeb28aaf713843891b286a75280 |
|
31-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Renaming SharedPreferences$Editor.startCommit to apply Also removes the artifical restriction that only one apply() can be in flight at once. That was old from when I thought it'd end up being required, but wasn't. Change-Id: I3540ea8be6e0760d6a51d218186f71655c2f3f55
/frameworks/base/core/java/android/app/ContextImpl.java
|
7f7ce40f90cf00dc046fb9520d77d29e96b474d6 |
|
28-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
resolved conflicts for merge of 28130bae to master Change-Id: I13df8dc12092c3d2536e12216df9130d5914380a
|
28130baefb4fa6d1e0ff9c92337295ba74461cf7 |
|
27-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
resolved conflicts for merge of 6b50986a to gingerbread-plus-aosp Change-Id: I7c5ec7ae717e75ad242e2c1ad4537052e4eea718
|
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/ContextImpl.java
|
4cbc4f1067503b5de62a5338478d3cad8c25bd3d |
|
26-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am 49209cbc: am d0e6598b: Merge "Start of SharedPreferences.startCommit()" into gingerbread Merge commit '49209cbcef37c4b20c9d0649ba284a51144b3930' * commit '49209cbcef37c4b20c9d0649ba284a51144b3930': Start of SharedPreferences$Editor.startCommit()
|
49209cbcef37c4b20c9d0649ba284a51144b3930 |
|
26-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am d0e6598b: Merge "Start of SharedPreferences.startCommit()" into gingerbread Merge commit 'd0e6598b4a32f3000247341414449a3aa4d9f7f4' into gingerbread-plus-aosp * commit 'd0e6598b4a32f3000247341414449a3aa4d9f7f4': Start of SharedPreferences$Editor.startCommit()
|
edf32d01316bd3432c023f17747461b08ae36375 |
|
25-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Start of SharedPreferences$Editor.startCommit() No implementation yet, just the interface. Change-Id: Idf9934b445da1fb72b79f0192218b47c0a7f5a34
/frameworks/base/core/java/android/app/ContextImpl.java
|
a3f641f22a1eeb64cc4daa8af635eb704e22660d |
|
20-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am cf2c68c9: am 11709ab0: Merge "Avoid unnecessary SharedPrefences disk writes." into gingerbread Merge commit 'cf2c68c9c21b8af62e95374312355d22ed55e586' * commit 'cf2c68c9c21b8af62e95374312355d22ed55e586': Avoid unnecessary SharedPrefences disk writes.
|
cf2c68c9c21b8af62e95374312355d22ed55e586 |
|
18-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
am 11709ab0: Merge "Avoid unnecessary SharedPrefences disk writes." into gingerbread Merge commit '11709ab07ca2eb97dfa3fc7bb3e0996e65908ade' into gingerbread-plus-aosp * commit '11709ab07ca2eb97dfa3fc7bb3e0996e65908ade': Avoid unnecessary SharedPrefences disk writes.
|
67fed01522ad26c850b20d2c960e4d392dc401d1 |
|
17-Aug-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Avoid unnecessary SharedPrefences disk writes. Apps commonly edit + commit redundant changes to their SharedPreferences, not checking the existing values. Rather than force all apps to double-check that their settings writes aren't redundant, we should just make .commit() faster (avoiding the disk write) when the file already exists on disk and no effective changes were made. Change-Id: I7edbd0d3ace5b69b7af6d12c39797c8b7f86230b
/frameworks/base/core/java/android/app/ContextImpl.java
|
9f53119b72e6da865bcd53173d3dacd1eba01aee |
|
05-Aug-2010 |
Dianne Hackborn <hackbod@google.com> |
First pass at a new clipboard API. ClipboardManager was in android.text(!!) so it needed to be moved up to android.content to have access to the richer data types we now need. ClippedData is the data representation. Still needs a lot of fleshing out to allow holding more than one data type at a time and perhaps conversions between them. (MIME-oriented interrogation and conversion will be done through ContentProvider, which needs to grow an ability to report multiple MIME types and accept a desired MIME type when a stream is being opened.) Change-Id: Ifa51bedcd084a677813b255d171804e8496b0cb5
/frameworks/base/core/java/android/app/ContextImpl.java
|
a58a8751b4c2ce457f0082a0baaee61312d56195 |
|
13-Jul-2010 |
Bai Tao <michaelbai@google.com> |
Add new system service CountryDetector a. The CountryDetector detects the country the user is in in order of mobile network, location, sim card or locale. It will be used by contact and contact provider. b. All added APIs are hidden at this stage. Change-Id: I4ba278571ffb6ab6ded0996d4f440a18534f8ed4
/frameworks/base/core/java/android/app/ContextImpl.java
|
a265083890cf67b35e432506e81fb90e7cf2bff8 |
|
22-Jul-2010 |
Steve Howard <showard@google.com> |
am 5e43c5a6: am b8e07a51: DL manager support for broadcasts + connectivity control Merge commit '5e43c5a6e8f94134850c7e3bc4c7f657e1579746' * commit '5e43c5a6e8f94134850c7e3bc4c7f657e1579746': DL manager support for broadcasts + connectivity control
|
5e43c5a6e8f94134850c7e3bc4c7f657e1579746 |
|
22-Jul-2010 |
Steve Howard <showard@google.com> |
am b8e07a51: DL manager support for broadcasts + connectivity control Merge commit 'b8e07a51c1849d6894c5773a3daacedd01294218' into gingerbread-plus-aosp * commit 'b8e07a51c1849d6894c5773a3daacedd01294218': DL manager support for broadcasts + connectivity control
|
b8e07a51c1849d6894c5773a3daacedd01294218 |
|
21-Jul-2010 |
Steve Howard <showard@google.com> |
DL manager support for broadcasts + connectivity control * Additions to DownloadManager to support control of broadcast intents, allowed network types, and roaming control. This includes new constants and added implementation. * New DB columns to hold connectivity flags and one to indicate whether the download was initiated through the public API; this is used to change behavior related to broadcast intents and connectivity controls. Change-Id: I2e8e4ce92cde7889a0f24dc43b86c596c73c0eaa
/frameworks/base/core/java/android/app/ContextImpl.java
|
a51eb0bb2fd9505a943a62f5f6b501fcb23b72bd |
|
15-Jul-2010 |
The Android Open Source Project <initial-contribution@android.com> |
am 50576fa8: merge from open-source master Merge commit '50576fa8152557a25e1a231c66d694fffbab34d6' * commit '50576fa8152557a25e1a231c66d694fffbab34d6': Start app with several activities with intent filter [Main, Launcher] was broken
|
50576fa8152557a25e1a231c66d694fffbab34d6 |
|
15-Jul-2010 |
The Android Open Source Project <initial-contribution@android.com> |
merge from open-source master Change-Id: I20cf00dba6908eeee12645e6878db7becdc2a5f9
|
df4cfa3664e06132c2e2cc26cade06a881f5e529 |
|
31-Mar-2010 |
Johan Erlandsson <johan.erlandsson@sonyericsson.com> |
Start app with several activities with intent filter [Main, Launcher] was broken When an application have more than one activities with intent filter [Main, Launcher], then the intent with ResolverActivity wasn't created correct. Change-Id: I2617122e07c35284862d2e0643888966ec0f7221
/frameworks/base/core/java/android/app/ContextImpl.java
|
4c14a0f13fb9f5d796b505991e0178b60efbaccf |
|
13-Jul-2010 |
Steve Howard <showard@google.com> |
am 47b46648: am b8d890eb: Merge "Initial implementation of the download manager public API." into gingerbread Merge commit '47b46648b5a9b8c518b96db37618fc49c5e5f2d1' * commit '47b46648b5a9b8c518b96db37618fc49c5e5f2d1': Initial implementation of the download manager public API.
|
47b46648b5a9b8c518b96db37618fc49c5e5f2d1 |
|
13-Jul-2010 |
Steve Howard <showard@google.com> |
am b8d890eb: Merge "Initial implementation of the download manager public API." into gingerbread Merge commit 'b8d890ebc1923d98d19d24f396442c91eb766b16' into gingerbread-plus-aosp * commit 'b8d890ebc1923d98d19d24f396442c91eb766b16': Initial implementation of the download manager public API.
|
a2709360665f77ed8bebccb2df86f08e8c83a701 |
|
03-Jul-2010 |
Steve Howard <showard@google.com> |
Initial implementation of the download manager public API. The implementation is in android.net.DownloadManager, which is obtained through Context.getSystemService(). Right now this class acts as a simple wrapper on top of the existing DownloadProvider, exposing a simple interface to a subset of DownloadProvider's functionality. There are several TODOs for features that require changes to the underlying download manager implementation. Change-Id: I2f26e51b60b6e82af8478ac7ccd895667df095b6
/frameworks/base/core/java/android/app/ContextImpl.java
|
b92cd4fc63597a4d90ba88a5e45d3783532d6734 |
|
10-Jul-2010 |
The Android Open Source Project <initial-contribution@android.com> |
am 0260887c: merge from open-source master Merge commit '0260887ca78330b8dd7009d91859925df94a69d6' * commit '0260887ca78330b8dd7009d91859925df94a69d6': Improved logging when there's an error creating the directories in getFilesDir()
|
0260887ca78330b8dd7009d91859925df94a69d6 |
|
10-Jul-2010 |
The Android Open Source Project <initial-contribution@android.com> |
merge from open-source master Change-Id: Ia0dff818a574c8bc79aa79d65fd21bab9f9f6c30
|
511d9ec363c5bb460e4695de56edc1b7785dc7bf |
|
09-Jul-2010 |
Kenny Root <kroot@google.com> |
am 0a21801f: am a5402dab: Merge "OBB API for PackageManager" into gingerbread Merge commit '0a21801f5fae22cd5e1b3e9f1c1405c744e24c9b' * commit '0a21801f5fae22cd5e1b3e9f1c1405c744e24c9b': OBB API for PackageManager
|
93565c4b3265c16aee4a82d7556f811776c17db8 |
|
19-Jun-2010 |
Kenny Root <kroot@google.com> |
OBB API for PackageManager Simple API for tracking .obb files associated with packages. Stores the path in the PackageSettings. No verification of file content is done now since the PackageManagerService can't read the SD card where these files will likely live. Change-Id: Ibeaf26ba0526b6d60f401137e58f46ee9faff39e
/frameworks/base/core/java/android/app/ContextImpl.java
|
5f5acca334bbff89b3801d2970d64b06e36614ba |
|
25-Jun-2010 |
Christian Mehlmauer <FireFart@gmail.com> |
Improved logging when there's an error creating the directories in getFilesDir() Improved logging when there's an error creating the directories in getFilesDir(); Due to mkdirs() only returns false on errors, it's better to output the directory path so the dev knows the path that can not be created See also Issue 8886 http://code.google.com/p/android/issues/detail?id=8886 Change-Id: I44d6adc8508ef9ca57f000b5d7bceeb0cfa3ed13
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.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/ContextImpl.java
|
74f170f9468d3cf6d7d0ef453320141a3e63571b |
|
02-Jun-2010 |
Vasu Nori <vnori@google.com> |
new API in Context. on openDatabase, new param DatabaseErrorHandler add new method openOrCreateDatabase in Context.java to allow callers specify a DatabaseErrorHandler object to be used when database corruption occurs. add new constructor in SQLiteOpenHelper to accept DatabaseErrorHandler as an additional param to be used when SQLiteDatabase instance is created. Change-Id: I912a0202a74510f9ca0206dd8101c4abab9102ae
/frameworks/base/core/java/android/app/ContextImpl.java
|
6e8304e57ec533e257a2496183125f257be1ff60 |
|
14-May-2010 |
Dianne Hackborn <hackbod@google.com> |
More fragment stuff: - New startActivityForResult() API. - Fragments now should have the correct lifecycle while hanging around in the back stack (not being destroyed and re-created). - Rework of state save/restore to make it simpler and better. In theory now any fragment (including layout and others in the hierarchy) can now be retained across config changes, though this hasn't been tested. Change-Id: I2a7fe560e14e567f5675a2f172a23fca67b3e97f
/frameworks/base/core/java/android/app/ContextImpl.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
|
d9d009d7212220aa9350bda153a2f9d8e4375f2b |
|
05-May-2010 |
Dianne Hackborn <hackbod@google.com> |
am 3445dae3: am 65b2561c: Merge "Fix issue #2643754: Launcher is caching widget layouts for too long" into froyo Merge commit '3445dae3f52fa8421e3b93496ac93c5753a43bd2' into kraken * commit '3445dae3f52fa8421e3b93496ac93c5753a43bd2': Fix issue #2643754: Launcher is caching widget layouts for too long
|
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/ContextImpl.java
|
b9eab6c793959cae13399620965d44bd3a6871c3 |
|
24-Apr-2010 |
Adam Powell <adamp@google.com> |
resolved conflicts for merge of 81cd2e90 to master Fixed public.xml value padding for kraken/master Merge commit '81cd2e90' into manualmerge Conflicts: api/current.xml Change-Id: I09d2c5c7e6acbf4086c0bb8756a5aaf41a646d71
|
81cd2e90ccdda498234384c8207afe2213714e60 |
|
22-Apr-2010 |
Adam Powell <adamp@google.com> |
Logo attribute for manifest and PackageManager methods to fetch it Change-Id: I2c5ac44a4e2af982a616b2012901d7395013b19f
/frameworks/base/core/java/android/app/ContextImpl.java
|
212db7d3f8ce5297f4a556234a9c0675c697f1cf |
|
09-Apr-2010 |
Adam Powell <adamp@google.com> |
Added MultiSelectListPreference Added set support to XmlUtils; added Set<String> functions to SharedPreferences. MultiSelectListPreference allows multiple selection and persistence of string preferences. Addresses bug 2575634. Change-Id: Icd56022d444b0ce43cccf819cd7d600fdb00e88a
/frameworks/base/core/java/android/app/ContextImpl.java
|
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/ContextImpl.java
|
c9b6851af68bdc20c4903b16c344e9f116647219 |
|
08-Apr-2010 |
Irfan Sheriff <isheriff@google.com> |
Throttling framework addins Add ThrottleManager in getSystemService Add API for URL fetch Bug: 2576057 Change-Id: Icd25c8b91ea4beea15c74e8ad7292ab48c962253
/frameworks/base/core/java/android/app/ContextImpl.java
|
559a78753165f20d5973b958791056154baecc43 |
|
08-Apr-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2549955: Moving the application fails -Activity Manager Crash on launching the app mResources will be null if we failed loading them because the app is on external storage that has been unmounted. Change-Id: If0dbbdc0c3441fa10d0ab074568361524db1c8db
/frameworks/base/core/java/android/app/ContextImpl.java
|
07330791116513710d879c45b2f095cd314cbfd0 |
|
31-Mar-2010 |
Jeff Brown <jeffbrown@google.com> |
Show SD unavailable icon for apps on SD when ejected. This change include a minor refactoring of PackageItemInfo and related classes to eliminate code duplication and to avoid redundant work searching for an ApplicationInfo instance we already have. Bug: b/2537578 Change-Id: Id0794c3f055ea58b943028f7a84abc7dec9d0aac
/frameworks/base/core/java/android/app/ContextImpl.java
|
d7c096845dee7616095eda0fe9e7aa08f0ba9c20 |
|
30-Mar-2010 |
Dianne Hackborn <hackbod@google.com> |
Package manager optimizations. Addresses: Issue #2550648: PackageManagerService setComponentEnabledSetting unconditionally writes Settings xml Issue #2549084: Make PackageManager.addPermission have async version Also make the writing of settings when changing the preferred activities to use the same async mechanism, and fiddle with thread priorities in the background thread to go up to foreground priority when holding the lock to write settings and a few other places. (At some point we should really clean this up to never acquire the main lock while in the background.) Change-Id: Ib2b7632543f6fb3f92a225518579f3b2d15e1413
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|
1afd1c90ebe789b8d3a137004127a50d2db7e3b5 |
|
19-Mar-2010 |
Dianne Hackborn <hackbod@google.com> |
Maybe fix issue #2457218: Corrupt batterystats.bin file preventing phone boot - LIBtt68127 No steps to repro, but makes the code more robust by using the standard JournaledFile class and doing sanity checks on the input it reads. This required moving the JournaledFile class in to the framework (and we really should get rid of either it or AtomicFile, but they have different recovery semantics so that is tough). Also went through and cleaned up the file management in various places. Change-Id: Ieb7268d8435e77dff66b6e67bb63b62e5dea572e
/frameworks/base/core/java/android/app/ContextImpl.java
|
87bba1ee14279bb14a28d42e27c4ef66d9967bf8 |
|
27-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Move DeviceAdmin APIs to android.app.admin. Also add ability for admins to hide themselves when not in use, a facility for admins to not allow other admins to reset their password, and debug dumping.
/frameworks/base/core/java/android/app/ContextImpl.java
|
82fe564267f276151063b2aa0d26075c3210d75f |
|
24-Feb-2010 |
Carl Shapiro <cshapiro@google.com> |
Comment out the finalize() methods defined on the Activity, ContextImpl, View and ViewRoot classes. This allows instances of subclasses to be collected without the additional latency of finalization.
/frameworks/base/core/java/android/app/ContextImpl.java
|
2269d1572e5fcfb725ea55f5764d8c3280d69f6d |
|
25-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Re-arrange android-common so framework no longer links with it. This is the framework part, moving classes around so the framework no longer needs to link to android-common. Makes some APIs public, others that didn't need to be public are private in the framework, some small things are copied.
/frameworks/base/core/java/android/app/ContextImpl.java
|
69fb574e294ed07404d515a66fccd046e974d32f |
|
22-Feb-2010 |
Tobias Haamel <haamel@google.com> |
Fix missing UI_MODE_SERVICE rename.
/frameworks/base/core/java/android/app/ContextImpl.java
|
53332883543868fb83e111a07306368b7772b340 |
|
19-Feb-2010 |
Tobias Haamel <haamel@google.com> |
Manager for controlling the UI modes. The ui modes can be controlled with the UiModeManager class, which is can be retrieved as a system service via getSytemService(Context.UIMODE_SERVICE). The class is necessary so that CarHome can be unbundled and other apps can disable the car mode. Its currently a hidden class, since I'm not sure if this is the best way to provide this functionality to the user.
/frameworks/base/core/java/android/app/ContextImpl.java
|
21f1bd17b2dfe361acbb28453b3f3b1a110932fa |
|
20-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2438980: Implement package watcher for voice recognizer service setting I am getting tired of writing package monitor code, realized this is missing in a number of places, and at this point it has gotten complicated enough that I don't think anyone actually does it 100% right so: Introducing PackageMonitor. Yes there are no Java docs. I am still playing around with just what this thing is to figure out what makes sense and how people will use it. It is being used to fix this bug for monitoring voice recognizers (integrating the code from the settings provider for setting an initial value), to replace the existing code for monitoring input methods (and fix the bug where we wouldn't remove an input method from the enabled list when it got uninstalled), to now monitor live wallpaper package changes (now allowing us to avoid reverting back to the default live wallpaper when the current one is updated!), and to monitor device admin changes. Also includes a fix so you can't uninstall an .apk that is currently enabled as a device admin. Also includes a fix where the default time zone was not initialized early enough which should fix issue #2455507 (Observed Google services frame work crash). In addition, this finally introduces a mechanism to determine if the "force stop" button should be enabled, with convenience in PackageMonitor for system services to handle it. All services have been updated to support this. There is also new infrastructure for reporting battery usage as an applicatin error report.
/frameworks/base/core/java/android/app/ContextImpl.java
|
8946dd3355fc1dcbad872c0546e356474d4cc5de |
|
19-Feb-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
Move package from internal to external and vice versa.
/frameworks/base/core/java/android/app/ContextImpl.java
|
5b993ce7bc29e43a3215a50ce6ce5d6550d4e5e2 |
|
12-Feb-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
Include install location preference when installing packages. Changes include Add new remote call in default container service to determine install location. Rename INSTALL_ON_SDCARD Remove recommentAppInstall method Add some additional flags used in remote stubs. Move check for protected apps prior to copy. Unit tests DefaultContainerService first parses the file uri(if content uri is specified it returns a default install internal only value) and returns a recommended location. Based on which the temporary id is determined either a file name or a container id and the file is copied there. This is then later renamed during install. Todo's light weight parsing of package when determining location since we just need the install location attribute only when finding out recomended location. This will also enable to move the check for updated system apps(cannot be on sdcard) prior to copying.
/frameworks/base/core/java/android/app/ContextImpl.java
|
470969346d7958f859d97d1a136b4ecc11e2a464 |
|
12-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Add APIs for mapping between new and current package names. This will allow Market and others to find out what the "real" name of a package is, when it is currently running under the old name of a previously installed version.
/frameworks/base/core/java/android/app/ContextImpl.java
|
117818e4f171b1fd9daa05349c48f61388f04567 |
|
09-Feb-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
Add new manifest option for install location Change recommendAppInstallLocation api add code to parse new attribute. Define flags in PackageInfo Add new settings attributes for enabling setting and value for install location Some tests The policy for install location: if explicitly set in manifest as internal only we try to install the app only on internal storage. if set to preferExternal, we try to install it on sdcard if possible. If not we fall back to internal. If the user enables setting SET_INSTALL_LOCATION(which will always be set to false in final release builds) and sets a prefered location, we try to honour it.
/frameworks/base/core/java/android/app/ContextImpl.java
|
e83cefcef07f9ac025642c1ffec76b4c7ab39cf2 |
|
05-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
New external storage APIs. This implements the spec for external storage organization, and properly reflects how the media scanner organizes the files it finds. Also includes package manager support for removing app private files from external storage when the application is uninstalled. For the new APIs and paths, the main place to look is Environment and Context.
/frameworks/base/core/java/android/app/ContextImpl.java
|
b104340496e3a531e26c8f428c808eca0e039f50 |
|
05-Feb-2010 |
San Mehat <san@google.com> |
Framework: Clean up / Refactor Mount APIs - Move android.storage.* -> android.os.storage.* and refactor users - Refactor generic shares back to explicit ums enable/disable/isEnabled - Remove media insert/removed event callbacks (not ready for Froyo) - Remove 'label' from volume state change callbacks - Add public API functions for enabling/disabling USB mass storage (permissions enforced in MountSevice) - Remove some stray un-needed import lines - Move android.os.IMountService / android.os.IMountServiceListener -> android.os.storage - Improve code comments Updated: MountService: Add dup state check and move debugging behind a conditional UsbStorageActivity: Fix review comments + a TODO StorageNotification: Add @Override tags StorageManager: Don't use a static Listener list MountService: Reduce bloat and fix == where I meant .equals() PackageManagerTests: Update for new API Signed-off-by: San Mehat <san@google.com>
/frameworks/base/core/java/android/app/ContextImpl.java
|
b56ae20b22fd7283df32072a431ab6d4965f3c1b |
|
05-Feb-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
Rename media resource broadcasts Add checks for fwdlocked and updated system apps add more tests remove duplicate adds
/frameworks/base/core/java/android/app/ContextImpl.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/ContextImpl.java
|