от
Я пытаюсь создать приложение для определения местоположения в помещении в студии android. Есть кнопка сканирования, которая запускает обнаружение устройств BLE. Когда я нажимаю на кнопку сканирования, приложение вылетает. Но когда я снова открываю приложение и снова нажимаю кнопку сканирования, оно работает. я попробовал это взято из одного из проектов из stackoverflow. Переменная класса:
`private BluetoothAdapter mBtAdapter = null;`

`final BluetoothManager btManager = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE);
mBtAdapter = btManager.getAdapter();`

`if (mBtAdapter == null || !mBtAdapter.isEnabled()) {
    Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
    startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
}
}`

`public void onScanButton(){
if (mBtAdapter.isEnabled()){
    scanLeDevice(true);
}
}`
это мой код
`BluetoothManager btManager;
private BluetoothAdapter btAdapter = null;
BluetoothLeScanner btScanner;
Button startScanningButton;
Button stopScanningButton;
TextView peripheralTextView;
private final static int REQUEST_ENABLE_BT = 1;
private static final int PERMISSION_REQUEST_COARSE_LOCATION = 1;`

`final BluetoothManager btManager = (BluetoothManager) 
getSystemService(Context.BLUETOOTH_SERVICE);
    btAdapter = btManager.getAdapter();
    btScanner = btAdapter.getBluetoothLeScanner();`

 `if (btAdapter != null

Пожалуйста, войдите или зарегистрируйтесь для публикации ответа на этот вопрос.

...