Почему Android скрывает Bluetooth-адрес Mac? - PullRequest
0 голосов
/ 05 июля 2018

Я пытаюсь получить блютуз MAC-адрес следующим образом:

mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();

String address = mBluetoothAdapter.getAddress();

Но всегда возвращается:

02:00:00:00:00:00

Почему? Это какая-то политика безопасности?

Спасибо.

Джакомо

1 Ответ

0 голосов
/ 05 июля 2018

Может быть, вам стоит проверить этот ответ.

Фрагмент из ответа:

 private String getBluetoothMac(final Context context) {

    String result = null;
    if (context.checkCallingOrSelfPermission(Manifest.permission.BLUETOOTH)
            == PackageManager.PERMISSION_GRANTED) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            // Hardware ID are restricted in Android 6+
            // https://developer.android.com/about/versions/marshmallow/android-6.0-changes.html#behavior-hardware-id
            // Getting bluetooth mac via reflection for devices with Android 6+
            result = android.provider.Settings.Secure.getString(context.getContentResolver(),
                    "bluetooth_address");
        } else {
            BluetoothAdapter bta = BluetoothAdapter.getDefaultAdapter();
            result = bta != null ? bta.getAddress() : "";
        }
    }
    return result;
}
...