Merge "Add isDebuggable() to DeviceInfoUtils for Android R compatibility" into main

This commit is contained in:
Yuyang Huang 2024-11-29 10:11:14 +00:00 • committed by Gerrit Code Review
commit 6ac23bd155
2 changed files with 15 additions and 2 deletions

View file

@ -16,6 +16,10 @@
package com.android.testutils;
import static com.android.modules.utils.build.SdkLevel.isAtLeastS;
import android.os.Build;
import android.os.SystemProperties;
import android.os.VintfRuntimeInfo;
import android.text.TextUtils;
import android.util.Pair;
@ -173,4 +177,14 @@ public class DeviceInfoUtils {
final KVersion from = DeviceInfoUtils.getMajorMinorSubminorVersion(version);
return current.isAtLeast(from);
}
/**
* Check if the current build is a debuggable build.
*/
public static boolean isDebuggable() {
if (isAtLeastS()) {
return Build.isDebuggable();
}
return SystemProperties.getInt("ro.debuggable", 0) == 1;
}
}

View file

@ -952,9 +952,8 @@ public class ConnectivityManagerTest {
final List<InetAddress> cellNetworkAddresses = cellLinkProperties.getAddresses();
// In userdebug build, on cellular network, if the onNetwork check failed, we also try to
// re-verify it by obtaining the IP address through DNS query.
boolean isUserDebug = Build.isDebuggable();
if (cellAddress instanceof Inet6Address) {
if (isUserDebug && !cellNetworkAddresses.contains(cellAddress)) {
if (DeviceInfoUtils.isDebuggable() && !cellNetworkAddresses.contains(cellAddress)) {
final InetAddress ipv6AddressThroughDns = InetAddresses.parseNumericAddress(
getDeviceIpv6AddressThroughDnsQuery(cellNetwork));
assertContains(cellNetworkAddresses, ipv6AddressThroughDns);