یکی از راههای روشن کردن بلوتوث در اندروید، این است که با استفاده از Intent، از کاربر بخواهیم این کار را انجام دهد. و سپس داخل متد onActivityResult، بررسی کنیم که آیا بلوتوث توسط کاربر فعال شد یا خیر! البته ما به صورت مستقیم و بدون Intent نیز میتوانیم بلوتوث را روشن و خاموش کنیم؛ این روش در «اینلینک» توضیح داده شده است.
با دو خط زیر میتوان درخواست روشن کردن بلوتوث را صادر کرد:
1 2 |
Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT); |
همچنین دسترسی زیر را هم وارد کنید:
1 |
<uses-permission android:name="android.permission.BLUETOOTH"/> |
مثال
در کد زیر که داخل یک اکتیویتی نوشته شده است، درخواست روشن کردن بلوتوث از کاربر، پس از بررسی حالتهای مختلف بلوتوث انجام شده و سپس داخل متد onActivityResult، نتیجهی درخواست بررسی شده است:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
public class MainActivity extends Activity { private static final int REQUEST_ENABLE_BT = 1; private TextView stateBluetooth; private BluetoothAdapter bluetoothAdapter; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); txtBluetoothState = (TextView) findViewById(R.id.bluetoothstate); bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); CheckBlueToothState(); // وضعیت بلوتوث را بررسی کن } private void CheckBlueToothState(){ if (bluetoothAdapter == null){ txtBluetoothState .setText("بلوتوث در این دستگاه پشتیبانی نمیشود."); }else{ if (bluetoothAdapter.isEnabled()){ if(bluetoothAdapter.isDiscovering()){ txtBluetoothState .setText("بلوتوث در حال پیدا کردن دستگاهها است."); }else{ txtBluetoothState .setText("بلوتوث روشن است."); } } else{ txtBluetoothState .setText("بلوتوث خاموش است."); Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT); } } } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if(requestCode == REQUEST_ENABLE_BT){ CheckBlueToothState(); } } } |
نظرات ثبت شده بدون دیدگاه