diff options
| author | 2022-04-04 20:03:08 +0000 | |
|---|---|---|
| committer | 2022-04-04 20:03:08 +0000 | |
| commit | e429ec01e79345c61836f3828ce25408a022bafc (patch) | |
| tree | 33d6e4f683de7bfa2671742aa0950c4caece0b90 /telecomm/java/android | |
| parent | 80dbdd63f46b0db114a12f8058bde5b4bd3969c6 (diff) | |
| parent | 27bf43460a324af01c086c9b2afcc2118dd849f2 (diff) | |
Merge "Add new TelecomManager method to check if a self-mgd app is in a call." into tm-dev
Diffstat (limited to 'telecomm/java/android')
| -rw-r--r-- | telecomm/java/android/telecom/TelecomManager.java | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/telecomm/java/android/telecom/TelecomManager.java b/telecomm/java/android/telecom/TelecomManager.java index df114dbabe5b..e0f5b2095190 100644 --- a/telecomm/java/android/telecom/TelecomManager.java +++ b/telecomm/java/android/telecom/TelecomManager.java @@ -2601,6 +2601,33 @@ public class TelecomManager { } /** + * Determines whether there are any ongoing {@link PhoneAccount#CAPABILITY_SELF_MANAGED} + * calls for a given {@code packageName} and {@code userHandle}. + * + * @param packageName the package name of the app to check calls for. + * @param userHandle the user handle on which to check for calls. + * @return {@code true} if there are ongoing calls, {@code false} otherwise. + * @hide + */ + @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) + public boolean isInSelfManagedCall(@NonNull String packageName, + @NonNull UserHandle userHandle) { + ITelecomService service = getTelecomService(); + if (service != null) { + try { + return service.isInSelfManagedCall(packageName, userHandle, + mContext.getOpPackageName()); + } catch (RemoteException e) { + Log.e(TAG, "RemoteException isInSelfManagedCall: " + e); + e.rethrowFromSystemServer(); + return false; + } + } else { + throw new IllegalStateException("Telecom service is not present"); + } + } + + /** * Handles {@link Intent#ACTION_CALL} intents trampolined from UserCallActivity. * @param intent The {@link Intent#ACTION_CALL} intent to handle. * @param callingPackageProxy The original package that called this before it was trampolined. |