2016-04-08 10 views
0

特定のデバイスを連続的にスキャンするアンドロイドサービスを作成しました。デバイスが接続されていることが検出されると、データが読み込まれて切断されます。デバイスが再び広告を出すと、サービスは同じことを再び行います。 一般的に、正常に動作していることを示していますが、Bluetoothをオフにして再度オンにすると、サービスは広告デバイスに接続されません。私はブルートゥースがオンになるとすぐに再度スキャンを試みました。私もGATTに再接続しようとしましたが、何も助けてくれません。Bluetoothの再起動後にBLEスキャンを再開する(ANDROID)

答えて

0

私はエラーを見つけました。それは同じ問題に直面している他の人には役に立ちます。私の問題は、自分のBluetoothGattオブジェクトがnullの場合にのみスキャンが開始されるように、スキャンメソッドでチェックを済ませたことです。

public void startNordicScan() { 
     if (mGatt == null) { 
      Log.d(LOGTAG, "startScan"); 
      BluetoothLeScannerCompat scanner = BluetoothLeScannerCompat.getScanner(); 
     scanner.startScan(mScanCallback); 
     } 
    } 

だから私はmGatt(BluetoothGatt)オブジェクトを作成せずに再スキャン開始した場合、デバイスは検出されません。

関連する問題