Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 44d6bdc3 authored by Brad Ebinger's avatar Brad Ebinger Committed by Gerrit Code Review
Browse files

Merge "[RCS UCE] Define a new ACCESS_RCS_USER_CAPABILITY_EXCHANGE permission...

Merge "[RCS UCE] Define a new ACCESS_RCS_USER_CAPABILITY_EXCHANGE permission for associated RCS UCE APIs"
parents d600f506 89165368
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@ package android {
    field public static final String ACCESS_MTP = "android.permission.ACCESS_MTP";
    field public static final String ACCESS_NETWORK_CONDITIONS = "android.permission.ACCESS_NETWORK_CONDITIONS";
    field public static final String ACCESS_NOTIFICATIONS = "android.permission.ACCESS_NOTIFICATIONS";
    field public static final String ACCESS_RCS_USER_CAPABILITY_EXCHANGE = "android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE";
    field public static final String ACCESS_SHARED_LIBRARIES = "android.permission.ACCESS_SHARED_LIBRARIES";
    field public static final String ACCESS_SHORTCUTS = "android.permission.ACCESS_SHORTCUTS";
    field public static final String ACCESS_SURFACE_FLINGER = "android.permission.ACCESS_SURFACE_FLINGER";
@@ -12009,8 +12010,8 @@ package android.telephony.ims {
    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void addOnPublishStateChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RcsUceAdapter.OnPublishStateChangedListener) throws android.telephony.ims.ImsException;
    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getUcePublishState() throws android.telephony.ims.ImsException;
    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void removeOnPublishStateChangedListener(@NonNull android.telephony.ims.RcsUceAdapter.OnPublishStateChangedListener) throws android.telephony.ims.ImsException;
    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void requestAvailability(@NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RcsUceAdapter.CapabilitiesCallback) throws android.telephony.ims.ImsException;
    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void requestCapabilities(@NonNull java.util.List<android.net.Uri>, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RcsUceAdapter.CapabilitiesCallback) throws android.telephony.ims.ImsException;
    method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE, android.Manifest.permission.READ_CONTACTS}) public void requestAvailability(@NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RcsUceAdapter.CapabilitiesCallback) throws android.telephony.ims.ImsException;
    method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE, android.Manifest.permission.READ_CONTACTS}) public void requestCapabilities(@NonNull java.util.List<android.net.Uri>, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RcsUceAdapter.CapabilitiesCallback) throws android.telephony.ims.ImsException;
    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUceSettingEnabled(boolean) throws android.telephony.ims.ImsException;
    field public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
    field public static final int CAPABILITY_UPDATE_TRIGGER_ETAG_EXPIRED = 1; // 0x1
+12 −1
Original line number Diff line number Diff line
@@ -1270,11 +1270,13 @@
        android:protectionLevel="dangerous|instant" />

    <!-- ====================================================================== -->
    <!-- Permissions for accessing the UCE Service                              -->
    <!-- Permissions for accessing the vendor UCE Service                       -->
    <!-- ====================================================================== -->

    <!-- @hide Allows an application to Access UCE-Presence.
         <p>Protection level: signature|privileged
         @deprecated Framework should no longer use this permission to access the vendor UCE service
         using AIDL, it is instead implemented by RcsCapabilityExchangeImplBase
    -->
    <permission android:name="android.permission.ACCESS_UCE_PRESENCE_SERVICE"
        android:permissionGroup="android.permission-group.PHONE"
@@ -1282,6 +1284,8 @@

    <!-- @hide Allows an application to Access UCE-OPTIONS.
         <p>Protection level: signature|privileged
         @deprecated Framework should no longer use this permission to access the vendor UCE service
         using AIDL, it is instead implemented by RcsCapabilityExchangeImplBase
    -->
    <permission android:name="android.permission.ACCESS_UCE_OPTIONS_SERVICE"
        android:permissionGroup="android.permission-group.PHONE"
@@ -2366,6 +2370,13 @@
    <permission android:name="android.permission.BIND_GBA_SERVICE"
        android:protectionLevel="signature" />

    <!-- Required for an Application to access APIs related to RCS User Capability Exchange.
         <p>Protection level: signature|privileged
         @SystemApi
         @hide -->
    <permission android:name="android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE"
        android:protectionLevel="signature|privileged" />

    <!-- ================================== -->
    <!-- Permissions for sdcard interaction -->
    <!-- ================================== -->
+1 −0
Original line number Diff line number Diff line
@@ -305,6 +305,7 @@ applications that come with the platform
        <!-- Needed for test only -->
        <permission name="android.permission.MODIFY_DAY_NIGHT_MODE"/>
        <permission name="android.permission.ACCESS_LOWPAN_STATE"/>
        <permission name="android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE"/>
        <permission name="android.permission.BACKUP"/>
        <permission name="android.permission.BATTERY_STATS"/>
        <permission name="android.permission.BIND_APPWIDGET"/>
+3 −0
Original line number Diff line number Diff line
@@ -336,6 +336,9 @@
    <!-- Permissions required for CTS test - AdbManagerTest -->
    <uses-permission android:name="android.permission.MANAGE_DEBUGGING" />

    <!-- Permission required for CTS test - CtsTelephonyTestCases -->
    <uses-permission android:name="android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE" />

    <!-- Permission needed for CTS test - DisplayTest -->
    <uses-permission android:name="android.permission.OVERRIDE_DISPLAY_MODE_REQUESTS" />

+6 −4
Original line number Diff line number Diff line
@@ -467,7 +467,7 @@ public class RcsUceAdapter {
     * poll on the network unless there are contacts being queried with stale information.
     * <p>
     * Be sure to check the availability of this feature using
     * {@link ImsRcsManager#isAvailable(int)} and ensuring
     * {@link ImsRcsManager#isAvailable(int, int)} and ensuring
     * {@link RcsFeature.RcsImsCapabilities#CAPABILITY_TYPE_OPTIONS_UCE} or
     * {@link RcsFeature.RcsImsCapabilities#CAPABILITY_TYPE_PRESENCE_UCE} is enabled or else
     * this operation will fail with {@link #ERROR_NOT_AVAILABLE} or {@link #ERROR_NOT_ENABLED}.
@@ -484,7 +484,8 @@ public class RcsUceAdapter {
     * @hide
     */
    @SystemApi
    @RequiresPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
    @RequiresPermission(allOf = {Manifest.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE,
            Manifest.permission.READ_CONTACTS})
    public void requestCapabilities(@NonNull List<Uri> contactNumbers,
            @NonNull @CallbackExecutor Executor executor,
            @NonNull CapabilitiesCallback c) throws ImsException {
@@ -557,7 +558,7 @@ public class RcsUceAdapter {
     *
     * <p>
     * Be sure to check the availability of this feature using
     * {@link ImsRcsManager#isAvailable(int)} and ensuring
     * {@link ImsRcsManager#isAvailable(int, int)} and ensuring
     * {@link RcsFeature.RcsImsCapabilities#CAPABILITY_TYPE_OPTIONS_UCE} or
     * {@link RcsFeature.RcsImsCapabilities#CAPABILITY_TYPE_PRESENCE_UCE} is
     * enabled or else this operation will fail with
@@ -571,7 +572,8 @@ public class RcsUceAdapter {
     * @hide
     */
    @SystemApi
    @RequiresPermission(Manifest.permission.MODIFY_PHONE_STATE)
    @RequiresPermission(allOf = {Manifest.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE,
            Manifest.permission.READ_CONTACTS})
    public void requestAvailability(@NonNull Uri contactNumber,
            @NonNull @CallbackExecutor Executor executor,
            @NonNull CapabilitiesCallback c) throws ImsException {