diff options
4 files changed, 10 insertions, 1 deletions
diff --git a/core/api/test-current.txt b/core/api/test-current.txt index 525f9ec793ef..3fb9fd931e23 100644 --- a/core/api/test-current.txt +++ b/core/api/test-current.txt @@ -837,6 +837,10 @@ package android.appwidget { package android.companion { + public final class CompanionDeviceManager { + method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public void enableSecureTransport(boolean); + } + public abstract class CompanionDeviceService extends android.app.Service { method public void onBindCompanionDeviceService(@NonNull android.content.Intent); } diff --git a/core/java/android/companion/CompanionDeviceManager.java b/core/java/android/companion/CompanionDeviceManager.java index e4b2cf335cfc..e45fa1949f18 100644 --- a/core/java/android/companion/CompanionDeviceManager.java +++ b/core/java/android/companion/CompanionDeviceManager.java @@ -28,6 +28,7 @@ import android.annotation.RequiresPermission; import android.annotation.SuppressLint; import android.annotation.SystemApi; import android.annotation.SystemService; +import android.annotation.TestApi; import android.annotation.UserHandleAware; import android.app.Activity; import android.app.ActivityManager; @@ -1308,12 +1309,13 @@ public final class CompanionDeviceManager { } /** - * Enable or disable secure transport for testing. Defaults to enabled. + * Enables or disables secure transport for testing. Defaults to being enabled. * Should not be used outside of testing. * * @param enabled true to enable. false to disable. * @hide */ + @TestApi @RequiresPermission(android.Manifest.permission.MANAGE_COMPANION_DEVICES) public void enableSecureTransport(boolean enabled) { try { diff --git a/core/java/android/companion/ICompanionDeviceManager.aidl b/core/java/android/companion/ICompanionDeviceManager.aidl index b89d3febdbcb..2318e3001698 100644 --- a/core/java/android/companion/ICompanionDeviceManager.aidl +++ b/core/java/android/companion/ICompanionDeviceManager.aidl @@ -108,5 +108,6 @@ interface ICompanionDeviceManager { void disableSystemDataSync(int associationId, int flags); + @EnforcePermission("MANAGE_COMPANION_DEVICES") void enableSecureTransport(boolean enabled); } diff --git a/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java b/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java index 4d4328dd14e8..be52b1c8bb1b 100644 --- a/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java +++ b/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java @@ -815,7 +815,9 @@ public class CompanionDeviceManagerService extends SystemService { } @Override + @EnforcePermission(MANAGE_COMPANION_DEVICES) public void enableSecureTransport(boolean enabled) { + enableSecureTransport_enforcePermission(); mTransportManager.enableSecureTransport(enabled); } |