以编程方式检测 Android 中开发人员模式下的无线调试选项是否处于活动状态

har*_*nan 7 android adb android-wifi android-wireless adbwireless

我试过开发​​者模式和USB调试是否启用,

使用以下代码更改。工作正常。

private fun check_My_Android_Mobile_Developer_Mode_Status() {

// 解决方案1

val adb: Int = Settings.Secure.getInt(this.contentResolver,
            Settings.Global.ADB_ENABLED, 0)

        Toast.makeText(this,"USB Debugging Detect: adb mode:"+adb, Toast.LENGTH_LONG).show()
Run Code Online (Sandbox Code Playgroud)

// 解决方案2

    if(Settings.Secure.getInt(this.getContentResolver(), Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 0) == 1) {
        // Developer Mode enabled
        Toast.makeText(this,"Developer Mode enabled: Show Alert", Toast.LENGTH_LONG).show()
    } else {
        //Developer Mode does not enabled
        Toast.makeText(this,"Developer does not enabled: Running Safe Mode", Toast.LENGTH_LONG).show()
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,我想检查无线调试模式是否已启用(从开发人员模式打开状态)。我无法找到任何解决方案。

任何人都可以帮忙解决这个问题吗?谢谢提前。参考链接如下:

如何检查 USB 调试是否启用

无线 adb-android-11

android-检测-when-adb-active-over-usb

Tro*_*ton 3

Android源代码揭示了wifi调试设置:https://cs.android.com/android/platform/superproject/+/master :packages/apps/Settings/src/com/android/settings/development/WirelessDebuggingEnabler.java;l =73?q=无线%20调试中

Settings.Global.ADB_WIFI_ENABLED = "adb_wifi_enabled"

fun isWifiAdbEnabled(): Boolean {
    // "this" is your activity or context
    return Settings.Global.getInt(this.contentResolver, "adb_wifi_enabled", 0) != 0
}
Run Code Online (Sandbox Code Playgroud)

用法:

Toast.makeText(this, "adb mode: ${isWifiAdbEnabled()}", Toast.LENGTH_LONG).show()
Run Code Online (Sandbox Code Playgroud)