By default we assume downgrade to audio is permitted; this capability
probides a means for a carrier to specifically deny that.
Bug: 22728624
Change-Id: I75e0a5b9e5ad2d970003a4691b6fc0ac0dcfe9e0
1. Unhide MSIM APIs in TelephonyManager that already have non-MSIM equivalent
APIs public.
2. Make MSIM API naming consistent (overloaded, no suffix).
3. Unhide APIs in SubscriptionManager that are necessary for MSIM.
Bug: 26772894
Change-Id: Ibebab7379ea79c8e4812bbd190342827048e30e2
Support multiple CA certificates as trust anchors for server certs
when connecting to EAP networks. For the full feature, also requries
wpa_supplicant support, Wifi stack change to set up certificates and
aliases, and Wifi Setting UI tweak.
Bug: 22547958
Change-Id: I3c9f0e184632b79044a9e623ce0e7d9aaddd2ae3
Added new PhoneAccount capability used to indicate whether the dialer
should use the presence bit in the contacts provider to determine when
the video call icon is shown or not.
Bug: 20257833
Change-Id: Ifb3cc5b7ff1090d539dfb925dce9f6327de15c46
The Alarm Manager now supports a set() variant that takes a listener
callback to invoke at alarm trigger time rather than a PendingIntent.
This is much lower overhead and has guaranteed low delivery latency
from the trigger time. The tradeoff is that the app must be running
*continuously* from the time the alarm is set to the time it is
delivered. If the app exits for any reason before the alarm fires,
the listener becomes invalid and the alarm will be dropped. This is
more or less equivalent to setting an alarm with a broadcast
PendingIntent that matches only a runtime-registered receiver.
The app's alarm listener can be any object that implements the new
AlarmManager.OnAlarmListener interface and implements its onAlarm()
method. There is no data delivered at alarm trigger time: whatever
state needs to be associated with the specific alarm instance should
simply be packaged inside the OnAlarmListener instance.
An alarm using OnAlarmListener can request that the onAlarm() method
be called on an arbitrary handler. If the program passes 'null' for
this parameter when setting the alarm, the callback occurs on the
application's main Looper thread.
Cherry-picked from 14a7bb0d370fffdf902a4e2345f46754ed2d7684
Bug 20157436
Change-Id: I2eb030a24efdd466a2eee1666c5231201b43684b
CP mods to take a URL as a parameter, and new ScanInfo object.
Cherry-picked from 52eb29f0822f129f2b14bacec23dd492f2260ac0
Change-Id: Idbb2d4751c575ba07a56942771e2b2955b624635
This reverts commit 677adf1e66ba83b8fb2c849c181303b35bd489bc.
Hiding new keycode to prevent change to public API before resubmitting.
Change-Id: Ic43273dd0c7ade1d51a36b77f363543f1df466e8
Needed for Ungaze to trigger "soft sleep" (respecting wake locks); operates by
sending new KEYCODE_SOFT_SLEEP to PhoneWindowManager, which calls
PowerManagerService's new method setUserInactiveOverride (thereby
causing immediate sleep, modulo wakelocks, upon next iteration of
PowerManagerService's main loop).
BUG: b/23589870
Change-Id: I24a96bd6db8ff28674c907f2898e49c4f6140209
Add new Activity callback to tell it when its saved state has
been invalidated.
The problem is that delivering the permission result does not go
through a path where the compatibility code can see it first to
mark its fragment manager as no longer having saved state. So this
new callback gives it a place to do that.
Change-Id: I5a4a185d9c746bae1afb5c588aba82c8daccf079
Add new Activity.isVoiceInteractionRoot() API that an activity can use
to determine whether it is the root activity of a voice interaction
session started by the user's designated voice interaction service.
This is a special new API that apps must explicitly check, because as
with visual activities the model behind an activity should usually be
that it accomplishes its task by interacting with the user (implicitly
getting their approval) rather than trusting that whoever invoked it
is telling it to do what the user once. In the voice world, however,
there are some cases where quick interactions want to allow for immediate
execution without further user involvement, so this API allows for that
without opening up security holes from other applications.
Change-Id: Ie02d2458f16cb0b12af825641bcf8beaf086931b
changes)
AppOpsManager:
Changed the default operating mode for WRITE_SETTINGS to MODE_DEFAULT from
MODE_ALLOWED.
packages/SettingsProvider:
We no longer do static permission checks for WRITE_SETTINGS in early checks and
defer that to app op when MODE_DEFAULT is returned. For some operations,
checking against WRITE_SECURE_SETTINGS is sufficient.
ActivityManagerService & PowerManagerService:
Incorporated app op checks and handled the MODE_DEFAULT case.
provider/Settings:
Added helper function to do checks on whether app ops protected operations
can be performed by a caller. This includes checks for WRITE_SETTINGS and
SYSTEM_ALERT_WINDOW.
Also added a public API (with javadocs) for apps to query if they can modify
system settings.
Changed the javadocs description for ACTION_MANAGE_WRITE_SETTINGS and
ACTION_MANAGE_OVERLAY_PERMISSION.
Added public API (with javadocs) for apps to query whether they can draw overlays or not,
and also javadocs description on how to use that check.
Change-Id: I7b651fe8af836c2074defdbd6acfec3f32acdbe9
The main change here is to not allow the dialog to go in to its "focus
on the last app the user selected" when running in voice interaction mode,
instead just always giving a simple list.
This also fixes some problems with cleaning up active commands when
an activity finishes and not forcing the current session to go away
when the screen is turned off.
Also added some debug help, having activity print the state of the
voice interactor.
Change-Id: Ifebee9c74d78398a730a280bb4970f47789dadf5
These were @removed too soon. We need to keep them @deprecated until
the bulk of devices support the new API and then we can remove them.
bug:22728205
Change-Id: If1b46ff1878f1778517624112b195c461645ddd1
Indicates whether the phone account supports displaying a subject line
for incoming calls and sending a subject line for outgoing calls.
Supports the IMS Instant Lettering feature.
Bug: 22769741
Change-Id: I6d803dc288bfd6d4e356310a8d10d5468c5d4186
Added a content description for the fingerprint icon,
which should be used throughout the platform.
Bug: 22616421
Change-Id: I8d65a568af926a692fd6be3e27d40b5d2dd6cbb1
...disabled after toggling them off
Keep track of whether a permission that has been declared by an app
was able to actually be installed in the system, along with an API
to find this information so that system UI can tell whether that
permission is of interest.
Also clean up some of the permission debug output.
Change-Id: If4541bedb857789b255bb18f03cad155dcda0b95
Add Request.isActive() API. Also improve documentation to tell
people what things cause it to become inactive. And fix a race
where we were modifying the active list from outside the main
thread without locking it.
Change-Id: I9248e014126cb121612edbe595108ace753456e2