Giới thiệu
Tương tự lấy tên, ví dụ này dùng BluetoothManager để lấy địa chỉ MAC (address) của adapter Bluetooth cục bộ.
Các bước thực hiện
Bước 1-2: Project & Giao diện
Giống các bài trước, chỉ cần một TextView.
Bước 3: Code (MainActivity.java)
package com.example.myapplication;
import android.bluetooth.BluetoothManager;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.RequiresApi;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private TextView textView;
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP_MR1)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.text);
BluetoothManager manager = (BluetoothManager) getSystemService(BLUETOOTH_SERVICE);
if (manager.getAdapter() != null) {
textView.setText("Địa chỉ MAC: " + manager.getAdapter().getAddress());
} else {
textView.setText("Không có Bluetooth");
}
}
}
Bước 4: Quyền (AndroidManifest.xml)
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
Lưu ý quan trọng
- Từ Android 6.0 (API 23), việc đọc MAC Bluetooth yêu cầu quyền vị trí (
ACCESS_FINE_LOCATIONhoặcACCESS_COARSE_LOCATION) và phải bật GPS. - Android 10+ hạn chế truy cập MAC thật, thường trả về địa chỉ ngẫu nhiên.