قطعه کد اندروید درخواست روشن کردن بلوتوث با Intent

قطعه کد اندروید درخواست روشن کردن بلوتوث با Intent

یکی از راه‌های روشن کردن بلوتوث در اندروید، این است که با استفاده از Intent، از کاربر بخواهیم این کار را انجام دهد. و سپس داخل متد onActivityResult، بررسی کنیم که آیا بلوتوث توسط کاربر فعال شد یا خیر! البته ما به صورت مستقیم و بدون Intent نیز می‌توانیم بلوتوث را روشن و خاموش کنیم؛ این روش در «این‌لینک» توضیح داده شده است.

با دو خط زیر می‌توان درخواست روشن کردن بلوتوث را صادر کرد:

Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);

همچنین دسترسی زیر را هم وارد کنید:

<uses-permission android:name="android.permission.BLUETOOTH"/>

مثال

در کد زیر که داخل یک اکتیویتی نوشته شده است، درخواست روشن کردن بلوتوث از کاربر، پس از بررسی حالت‌های مختلف بلوتوث انجام شده و سپس داخل متد onActivityResult، نتیجه‌ی درخواست بررسی شده است:

 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();
        }
    }

}

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد.

cp-codfk

نظرات ثبت شده بدون دیدگاه

توضیحات پیشنهادی نظرات اشتراک