我有下一个代码:
public class AddPrinter extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
bluetoothAdapter.startDiscovery();
filter = new IntentFilter();
filter.addAction(BluetoothDevice.ACTION_FOUND);
filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_STARTED);
filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
registerReceiver(receiver, filter);
}
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
System.out.println(action);
if (BluetoothDevice.ACTION_FOUND.equals(action)) {
BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
adapter.add(device);
}
else if (BluetoothAdapter.ACTION_DISCOVERY_STARTED.equals(intent.getAction())) {
System.out.println("STARTED");
}
else if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(intent.getAction())) {
Utils.dialog.dismiss();
}
}
};
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是如此奇怪,由于某种原因,从未调用过ACTION_DISCOVERY_STARTED,但所有其他操作都没问题,我缺少什么?感谢您的时间.
试试这个
public class AddPrinter extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
registerReceiver(receiver, filter);
filter = new IntentFilter(BluetoothAdapter.ACTION_DISCOVERY_STARTED);
registerReceiver(receiver, filter);
filter = new IntentFilter(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
registerReceiver(receiver, filter);
//
bluetoothAdapter.startDiscovery();
}
Run Code Online (Sandbox Code Playgroud)
bluetoothAdapter.startDiscovery();注册接收后提出
| 归档时间: |
|
| 查看次数: |
3205 次 |
| 最近记录: |