diff --git a/core/api/current.txt b/core/api/current.txt index a9303a7fa1a86..f49a73bc63d9a 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -9716,7 +9716,7 @@ package android.companion { } public final class CompanionDeviceManager { - method public void associate(@NonNull android.companion.AssociationRequest, @NonNull android.companion.CompanionDeviceManager.Callback, @Nullable android.os.Handler); + method @RequiresPermission(value=android.Manifest.permission.REQUEST_COMPANION_PROFILE_WATCH, conditional=true) public void associate(@NonNull android.companion.AssociationRequest, @NonNull android.companion.CompanionDeviceManager.Callback, @Nullable android.os.Handler); method public void disassociate(@NonNull String); method @NonNull public java.util.List getAssociations(); method public boolean hasNotificationAccess(android.content.ComponentName); diff --git a/core/java/android/companion/CompanionDeviceManager.java b/core/java/android/companion/CompanionDeviceManager.java index 59646f106db5a..b441b364cec8f 100644 --- a/core/java/android/companion/CompanionDeviceManager.java +++ b/core/java/android/companion/CompanionDeviceManager.java @@ -16,6 +16,7 @@ package android.companion; +import android.Manifest; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.RequiresPermission; @@ -141,6 +142,10 @@ public final class CompanionDeviceManager { *

Calling this API requires a uses-feature * {@link PackageManager#FEATURE_COMPANION_DEVICE_SETUP} declaration in the manifest

* + *

When using {@link AssociationRequest#DEVICE_PROFILE_WATCH watch} + * {@link AssociationRequest.Builder#setDeviceProfile profile}, caller must also hold + * {@link Manifest.permission#REQUEST_COMPANION_PROFILE_WATCH}

+ * * @param request specific details about this request * @param callback will be called once there's at least one device found for user to choose from * @param handler A handler to control which thread the callback will be delivered on, or null, @@ -148,6 +153,9 @@ public final class CompanionDeviceManager { * * @see AssociationRequest */ + @RequiresPermission( + value = Manifest.permission.REQUEST_COMPANION_PROFILE_WATCH, + conditional = true) public void associate( @NonNull AssociationRequest request, @NonNull Callback callback,