1
В настоящее время я разработал новый метод для обнаружения готовых соединений bluetooh. Вот мой код:Как вызвать метод onReceive в другом методе?
private void DiscoverOBDConnection() {
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
mBluetoothAdapter.startDiscovery();
BroadcastReceiver mReceiver;
// Create a BroadcastReceiver for ACTION_FOUND
final List<String> discoverableDevicesList = new ArrayList<String>();
mReceiver = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
// When discovery finds a device
if (BluetoothDevice.ACTION_FOUND.equals(action)) {
// Get the BluetoothDevice object from the Intent
BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
short rssi = intent.getShortExtra(BluetoothDevice.EXTRA_RSSI, Short.MIN_VALUE);
discoverableDevicesList.add(device.getName() + "\n" + device.getAddress() + "\n" + rssi);
String discoveredDeviceName = device.getName();
discoverableDevicesList.add(discoveredDeviceName);
}
}
};
IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
context.registerReceiver(mReceiver,filter); // Don't forget to unregister during onDestroy
}
Я просто не знаю, как вызвать метод onreceive из другого метода. Не могли бы вы помочь мне узнать, как реализовать и открыть готовые для подключения устройства Bluetooth?
Soohwan, спасибо за ваш ответ. Не могли бы вы изменить мой код, чтобы найти ответ? Где я должен позвонить BluetoothReceiver напрямую? Спасибо. –
Soohwan Park, он отлично работал. Я понял, как реализовать ваше предложение. Спасибо. –
Отлично. но почему вам нужно называть это самим? Трансляция отправляется системой @the_eternal –