1

Cordova の BluetoothLowEnergy プラグインを使用して近くの iBeacons をスキャンしようとしています。私はcordova-plugin-eddystoneの両方を試しました

evothings.eddystone.startScan(successCallback, errorCallback)

BluetoothLE

bluetoothle.startScan(_successCallback, errorCallback, {allowDuplicates: true});

ただし、スキャンをバックグラウンドで動作させることはできません。アプリが BLE センサーを利用することを指定して、Xcode を使用して .plist でバックグラウンド機能を有効にしました。さらに、de.appplant.cordova.plugin.background-modeプラグインを使用して、deviceReady イベントの後に次の関数を実行します。

cordova.plugins.backgroundMode.enable();

ただし、バックグラウンド モードに入るとスキャンが一時停止します。何があっても。別の方法はありますか?eddystone プラグインでバックグラウンド モードが無効になっていますか? ありがとうございました

4

1 に答える 1

0

私が見たところ、de.appplant.cordova.plugin.background-modeプラグインはオーディオ バックグラウンド モードを使用してアプリをバックグラウンドで実行し続けるため、代わりにそれを有効にする必要があります。

このプラグインの README ファイルに記載されているように、これは App Store に準拠していないため、アプリは審査プロセスに合格しないことに注意してください。基本的に、オーディオ アプリを作成している場合は、オーディオ バックグラウンド モードのみを使用できます。その場合でも、ビーコンのスキャンではなく、バックグラウンドでオーディオを再生するためにのみ使用する必要があります。

また、使用している Eddystone プラグインについても言及していません。実際にバックグラウンドで実行できることを確認しましたか? バックグラウンドで Bluetooth デバイスを検出できるようにするには、いくつかの特別な考慮事項が必要になるため、単にプラグインがサポートしていない可能性があります。サポートされていることを確認した場合は、プラグインの作成者自身にさらに問い合わせることをお勧めします。

于 2015-10-21T10:28:43.200 に答える