Bluetooth'u kur

Uygulamanızın Bluetooth veya Bluetooth Düşük Enerji üzerinden iletişim kurabilmesi için cihazda Bluetooth'un desteklendiğini doğrulamanız gerekir ve destekleniyorsa etkin olduğundan emin olun. Bu kontrolün yalnızca <uses-feature.../> manifest dosyası girişindeki android:required özelliği false olarak ayarlandı.

Bluetooth desteklenmiyorsa Bluetooth'u düzgünce devre dışı bırakmanız gerekir. özellikleri. Bluetooth destekleniyor ancak devre dışı bırakılmışsa kullanıcı, uygulamanızdan ayrılmadan Bluetooth'u etkinleştirebilir.

İlk adım Bluetooth izinlerini ekleme manifest dosyanıza ekleyin.

İzinler verildikten sonra Bluetooth kurulumu iki adımda tamamlanır BluetoothAdapter kullanarak:

  1. BluetoothAdapter edinin.

    BluetoothAdapter, tüm Bluetooth etkinlikleri için gereklidir. İlgili içeriği oluşturmak için kullanılan BluetoothAdapter, cihazın kendi Bluetooth adaptörünü ( Bluetooth radyo). BluetoothAdapter almak için öncelikle bir Context Elde ettiğiniz verileri BluetoothManager örneği sisteme ait hizmet. BluetoothManager#getAdapter aranıyor size BluetoothAdapter nesnesini verir. getAdapter(), null döndürürse Bluetooth'u desteklemiyorsa

    Örnek:

    Kotlin

    val bluetoothManager: BluetoothManager = getSystemService(BluetoothManager::class.java)
    val bluetoothAdapter: BluetoothAdapter? = bluetoothManager.getAdapter()
    if (bluetoothAdapter == null) {
      // Device doesn't support Bluetooth
    }
    

    Java

    BluetoothManager bluetoothManager = getSystemService(BluetoothManager.class);
    BluetoothAdapter bluetoothAdapter = bluetoothManager.getAdapter();
    if (bluetoothAdapter == null) {
      // Device doesn't support Bluetooth
    }
    
  2. Bluetooth'u etkinleştirin.

    Ardından, Bluetooth'un etkinleştirildiğinden emin olmanız gerekir. Telefonla arama isEnabled() - Bluetooth'un şu anda etkin olup olmadığını kontrol edin. Bu yöntem false (yanlış) değerini döndürürse Bluetooth devre dışı bırakılır. Bluetooth'un etkinleştirilmesini istemek için şu numarayı arayın: startActivityForResult() bir ACTION_REQUEST_ENABLE intent işlemidir. Bu görüşme, Bluetooth'u etkinleştirmek için bir istek gönderir. (uygulamanızı durdurmadan) kontrol edin.

    Örnek:

    Kotlin

    if (bluetoothAdapter?.isEnabled == false) {
      val enableBtIntent = Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE)
      startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT)
    }
    

    Java

    if (!bluetoothAdapter.isEnabled()) {
      Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
      startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
    }
    

Aşağıdaki gibi, Bluetooth'u etkinleştirmek için kullanıcı izni isteyen bir iletişim kutusu görünür: Şekil 1. Kullanıcı izin verirse sistem Bluetooth'u etkinleştirmeye başlar. ve süreç tamamlandığında (veya başarısız olduğunda) odak uygulamanıza geri döner.


Şekil 1. Bluetooth'u etkinleştirme iletişim kutusu.

REQUEST_ENABLE_BT sabiti startActivityForResult() 0'dan büyük veya 0'a eşit olması gereken, yerel olarak tanımlanmış bir tam sayıdır. Sistem bu sabit bilgiyi size onActivityResult() requestCode parametresi olarak uygulanır.

Bluetooth etkinleştirildiğinde, etkinliğiniz RESULT_OK sonuç kodu onActivityResult() geri arama. Bluetooth bir hata nedeniyle etkinleştirilmemişse (veya kullanıcı "Reddet") yanıt verirse sonuç kodu şöyle olur: RESULT_CANCELED.

İsteğe bağlı olarak, uygulamanız ayrıca ACTION_STATE_CHANGED yayın amacı (Bluetooth durumu her Bluetooth olduğunda sistemin yayınladığı anlamına gelir. Bu yayın ek alanlar içeriyor EXTRA_STATE ve EXTRA_PREVIOUS_STATE, sırasıyla yeni ve eski Bluetooth durumlarını içeren öğeler arasında yer alır. Olası değerler bu ekstra alanlar STATE_TURNING_ON STATE_ON, STATE_TURNING_OFF, ve STATE_OFF. Uygulamanızın çalışma zamanını algılaması gerekiyorsa bu yayını dinlemek faydalı olabilir Bluetooth durumunda yapılan değişiklikler.

İpucu: Keşfedilebilirlik özelliği etkinleştirildiğinde otomatik olarak Bluetooth'a dokunun. Güncellemeden önce cihaz bulunabilirliğini sürekli olarak etkinleştirmeyi planlıyorsanız bir hata alıyorsanız önceki adımlarda verilen 2. adımı atlayabilirsiniz.

Cihazda Bluetooth etkinleştirildikten sonra Bluetooth klasik ve Bluetooth özelliklerini Bluetooth Düşük Enerji.

Bluetooth klasik için Bluetooth cihazları bulabilirsiniz ve Bluetooth cihazlara bağlanma.

Bluetooth Düşük Enerji için BDE cihazlarını bulabilir, bir GATT sunucusuna bağlanabilir ve BDE verilerini aktarın.