android蓝牙at命令开启,如何在android中以编程方式启用/禁用蓝牙

这是一种更健壮的方法,也处理enable()\disable()方法的返回值:

public static boolean setBluetooth(boolean enable) {

BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();

boolean isEnabled = bluetoothAdapter.isEnabled();

if (enable && !isEnabled) {

return bluetoothAdapter.enable();

}

else if(!enable && isEnabled) {

return bluetoothAdapter.disable();

}

// No need to change bluetooth state

return true;

}

并将以下权限添加到清单文件中:

但请记住以下几点:

这是一个异步调用:它将立即返回,并返回客户端

应该听取ACTION_STATE_CHANGED以获得后续通知

适配器状态更改。如果此调用返回true,则适配器

state将立即从STATE_OFF转换为STATE_TURNING_ON,

一段时间后转换到STATE_OFF或STATE_ON。如果

这个调用返回false然后会出现一个直接的问题

防止适配器打开 - 例如飞行模式,或

适配器已经打开。

更新强>

好的,那么如何实现蓝牙监听器?:

private final BroadcastReceiver mReceiver = new BroadcastReceiver() {

@Override

public void onReceive(Context context, Intent intent) {

final String action = intent.getAction();

if (action.equals(BluetoothAdapter.ACTION_STATE_CHANGED)) {

final int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE,

BluetoothAdapter.ERROR);

switch (state) {

case BluetoothAdapter.STATE_OFF:

// Bluetooth has been turned off;

break;

case BluetoothAdapter.STATE_TURNING_OFF:

// Bluetooth is turning off;

break;

case BluetoothAdapter.STATE_ON:

// Bluetooth has been on

break;

case BluetoothAdapter.STATE_TURNING_ON:

// Bluetooth is turning on

break;

}

}

}

};

如何注册/取消注册接收器? (在Activity班级)

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// ...

// Register for broadcasts on BluetoothAdapter state change

IntentFilter filter = new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED);

registerReceiver(mReceiver, filter);

}

@Override

public void onStop() {

super.onStop();

// ...

// Unregister broadcast listeners

unregisterReceiver(mReceiver);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值