OSDN Git Service

Improve multi-user broadcasts.
authorDianne Hackborn <hackbod@google.com>
Thu, 30 Aug 2012 01:32:08 +0000 (18:32 -0700)
committerDianne Hackborn <hackbod@google.com>
Thu, 30 Aug 2012 21:33:22 +0000 (14:33 -0700)
commit5ac72a29593ab9a20337a2225df52bdf4754be02
treedc5310e556b3662cb5f097b30e700a26d50a4db5
parente217ee4d7a8223289a1af7363627c69956c46d41
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
50 files changed:
api/current.txt
core/java/android/app/ActivityManagerNative.java
core/java/android/app/ContextImpl.java
core/java/android/content/Context.java
core/java/android/content/ContextWrapper.java
core/java/android/os/RecoverySystem.java
core/java/android/os/UserHandle.java
core/java/android/server/search/SearchManagerService.java
core/tests/coretests/src/android/app/activity/BroadcastTest.java
media/java/android/media/AudioService.java
packages/SystemUI/src/com/android/systemui/statusbar/policy/AirplaneModeController.java
policy/src/com/android/internal/policy/impl/GlobalActions.java
policy/src/com/android/internal/policy/impl/PhoneFallbackEventHandler.java
policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
policy/src/com/android/internal/policy/impl/keyguard_obsolete/KeyguardViewMediator.java
services/java/com/android/server/AlarmManagerService.java
services/java/com/android/server/BatteryService.java
services/java/com/android/server/BluetoothManagerService.java
services/java/com/android/server/ConnectivityService.java
services/java/com/android/server/DevicePolicyManagerService.java
services/java/com/android/server/DeviceStorageMonitorService.java
services/java/com/android/server/DockObserver.java
services/java/com/android/server/DropBoxManagerService.java
services/java/com/android/server/LocationManagerService.java
services/java/com/android/server/MountService.java
services/java/com/android/server/NsdService.java
services/java/com/android/server/TelephonyRegistry.java
services/java/com/android/server/ThrottleService.java
services/java/com/android/server/UiModeManagerService.java
services/java/com/android/server/UpdateLockService.java
services/java/com/android/server/WallpaperManagerService.java
services/java/com/android/server/am/ActiveServices.java
services/java/com/android/server/am/ActivityManagerService.java
services/java/com/android/server/am/BroadcastFilter.java
services/java/com/android/server/connectivity/Tethering.java
services/java/com/android/server/location/GpsLocationProvider.java
services/java/com/android/server/net/NetworkPolicyManagerService.java
services/java/com/android/server/net/NetworkStatsService.java
services/java/com/android/server/pm/UserManagerService.java
services/java/com/android/server/power/Notifier.java
services/java/com/android/server/power/ShutdownThread.java
services/java/com/android/server/usb/UsbDeviceManager.java
services/java/com/android/server/usb/UsbSettingsManager.java
test-runner/src/android/test/mock/MockContext.java
tests/ActivityTests/src/com/google/android/test/activity/ActivityTestMain.java
tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
wifi/java/android/net/wifi/SupplicantStateTracker.java
wifi/java/android/net/wifi/WifiConfigStore.java
wifi/java/android/net/wifi/WifiStateMachine.java
wifi/java/android/net/wifi/p2p/WifiP2pService.java