summaryrefslogtreecommitdiff
path: root/telecomm/java/android
diff options
context:
space:
mode:
author Thomas Stuart <tjstuart@google.com> 2022-01-15 00:22:59 +0000
committer Thomas Stuart <tjstuart@google.com> 2022-01-24 18:26:26 +0000
commitb90f5c9dc60c91a0c665fd714484f560078bcd09 (patch)
tree8aef6ff2c23b17c4d8d3bc9617263cec7c81756e /telecomm/java/android
parentc3e304ddf0ec48d98a51fdb9377a0c744ef594c1 (diff)
TelecomManager#getSelfManagedPA comments update (3/3)
bug: 209839019 Test: CTS Change-Id: I152e0ee7bd749598a1822f34566b66a50df04863
Diffstat (limited to 'telecomm/java/android')
-rw-r--r--telecomm/java/android/telecom/TelecomManager.java18
1 files changed, 14 insertions, 4 deletions
diff --git a/telecomm/java/android/telecom/TelecomManager.java b/telecomm/java/android/telecom/TelecomManager.java
index 6279bf88ab1c..ecb85957d6d9 100644
--- a/telecomm/java/android/telecom/TelecomManager.java
+++ b/telecomm/java/android/telecom/TelecomManager.java
@@ -1294,14 +1294,24 @@ public class TelecomManager {
* {@link PhoneAccount#CAPABILITY_SELF_MANAGED}.
* <p>
* Requires permission {@link android.Manifest.permission#READ_PHONE_STATE}, or that the caller
- * is the default dialer app.
+ * is the default dialer app to get all phone account handles.
+ * <P>
+ * If the caller doesn't meet any of the above requirements and has {@link
+ * android.Manifest.permission#MANAGE_OWN_CALLS}, the caller can get only the phone account
+ * handles they have registered.
* <p>
- * A {@link SecurityException} will be thrown if a called is not the default dialer, or lacks
- * the {@link android.Manifest.permission#READ_PHONE_STATE} permission.
+ * A {@link SecurityException} will be thrown if the caller is not the default dialer
+ * or the caller does not have at least one of the following permissions:
+ * {@link android.Manifest.permission#READ_PHONE_STATE} permission,
+ * {@link android.Manifest.permission#MANAGE_OWN_CALLS} permission
*
* @return A list of {@code PhoneAccountHandle} objects.
*/
- @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE)
+ @RequiresPermission(anyOf = {
+ READ_PRIVILEGED_PHONE_STATE,
+ android.Manifest.permission.READ_PHONE_STATE,
+ android.Manifest.permission.MANAGE_OWN_CALLS
+ })
public List<PhoneAccountHandle> getSelfManagedPhoneAccounts() {
ITelecomService service = getTelecomService();
if (service != null) {