Uygulamam bir Bluetooth LE cihazına bağlanmalıdır. Genellikle mBluetoothAdapter.startLeScan(mLeScanCallback);
kullanarak bir cihaz taraması gerçekleştirirsiniz. Geri arama mevcut cihazlar hakkında bilgi sağlar. Eğer özel bir cihaza bağlanmak istiyorsanızAndroid 4.4: Bluetooth Düşük Enerji; Bir BLE cihazı için tarama yapmadan bağlanın
yapmanız Bana göre o zaman
BluetoothDevice device = mBluetoothAdapter.getRemoteDevice(address);
ve
mBluetoothGatt = device.connectGatt(this, false, mGattCallback);
gibi bir şey bu size BLE cihaza bağlanmak için gereken tek şey gibi görünüyor BLE adresini bilmek ve daha sonra yukarıdaki iki adımla ona bağlanmak. Bu yüzden bir BLE adresini zaten biliyorsanız (örneğin, BLE aygıtının etiketinde yazılıyorsa) BLE taraması yapmam gerekmiyor.
Ancak karşılaştığım şey, daha önce BLE taramasından hiç bulamadığım bir BLE aygıtım varsa, BLE adresini kullanarak doğrudan bağlanmak mümkün değildir. Android telefonumla en az bir kez taramak zorundayım. Daha sonra bir daha taramaya gerek duymuyorum ve BLE cihazına sadece BLE adresini kullanarak bağlanabiliyorum.
Böyle mi olmalıydı yoksa bir şeyi denetledim mi?
Çok teşekkürler, Stefan
Bağlamadan önce [eşleştirme ve/veya bağlama] (https://piratecomm.wordpress.com/2014/01/19/ble-pairing-vs-bonding/) gerekli olabilir mi? – JimmyB
BLE'yi anladığım kadarıyla, bu gerekli değildir. Ayrıca bir tarama gerçekleştirirsem, eşleştirme veya bağlama için hiçbir şey yapmam ve işe yarıyor. Sorun, bir BLE taraması yapmadan doğrudan bir aygıta bağlanmaktır. – Stefan