aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Biggers <ebiggers@google.com>2023-11-22 19:46:55 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-11-22 19:46:55 +0000
commit716a6ad61d99dd42183e83ff707650dfd80032ba (patch)
treea7d987ded1dd3c84ee4c1dc6fdd5044ae677cc67
parent9eed888af3af536b68ea2b530ca7d9012d94388d (diff)
parentf2847471eac8fa6a68c5a8d69d35cc9b3599acad (diff)
downloadrobolectric-shadows-716a6ad61d99dd42183e83ff707650dfd80032ba.tar.gz
Don't use isUserKeyUnlocked() after Android 14 am: f2847471ea
Original change: https://android-review.googlesource.com/c/platform/external/robolectric-shadows/+/2843873 Change-Id: I44947baa105c9d33079145a13522f3b7bf05cb1d Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--robolectric/src/test/java/org/robolectric/shadows/ShadowStorageManagerTest.java12
-rw-r--r--shadows/framework/src/main/java/org/robolectric/shadows/ShadowStorageManager.java4
2 files changed, 13 insertions, 3 deletions
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowStorageManagerTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowStorageManagerTest.java
index 220317adc..ecc07bd63 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowStorageManagerTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowStorageManagerTest.java
@@ -2,6 +2,7 @@ package org.robolectric.shadows;
import static android.os.Build.VERSION_CODES.N;
import static android.os.Build.VERSION_CODES.TIRAMISU;
+import static android.os.Build.VERSION_CODES.UPSIDE_DOWN_CAKE;
import static com.google.common.truth.Truth.assertThat;
import static org.robolectric.RuntimeEnvironment.application;
import static org.robolectric.Shadows.shadowOf;
@@ -67,10 +68,17 @@ public class ShadowStorageManagerTest {
}
@Test
- @Config(minSdk = N)
+ @Config(minSdk = N, maxSdk = UPSIDE_DOWN_CAKE)
public void isUserKeyUnlocked() {
shadowOf(application.getSystemService(UserManager.class)).setUserUnlocked(true);
- assertThat(StorageManager.isUserKeyUnlocked(0)).isTrue();
+ // Use reflection, as this method is planned to be removed from StorageManager in V.
+ assertThat(
+ (boolean)
+ ReflectionHelpers.callStaticMethod(
+ StorageManager.class,
+ "isUserKeyUnlocked",
+ ReflectionHelpers.ClassParameter.from(int.class, 0)))
+ .isTrue();
}
private StorageVolume buildAndGetStorageVolume(File file, String description) {
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowStorageManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowStorageManager.java
index f17c6f434..ccdf10d49 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowStorageManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowStorageManager.java
@@ -3,6 +3,7 @@ package org.robolectric.shadows;
import static android.os.Build.VERSION_CODES.M;
import static android.os.Build.VERSION_CODES.N;
import static android.os.Build.VERSION_CODES.TIRAMISU;
+import static android.os.Build.VERSION_CODES.UPSIDE_DOWN_CAKE;
import static org.robolectric.RuntimeEnvironment.application;
import android.os.UserManager;
@@ -100,8 +101,9 @@ public class ShadowStorageManager {
isFileEncryptionSupported = isSupported;
}
+ // Use maxSdk=U, as this method is planned to be removed from StorageManager in V.
@HiddenApi
- @Implementation(minSdk = N)
+ @Implementation(minSdk = N, maxSdk = UPSIDE_DOWN_CAKE)
protected static boolean isUserKeyUnlocked(int userId) {
ShadowUserManager extract = Shadow.extract(application.getSystemService(UserManager.class));
return extract.isUserUnlocked();