2016-09-28 5 views
1

私はBluetooth Low Energy Scannerアンドロイドアプリを作成しました。バックグラウンドで常にスキャンしたいと思います。 私の場合は、ユーザーがアプリケーションを開くと、スキャンが開始されますが、電話のタスクマネージャをクリアすると、アプリケーションはスキャンを停止します。BLEスキャナアンドロイドアプリケーションが常にバックグラウンドで実行されるようにします。

私は、アプリケーションが常にタスクマネージャをクリアしても、常にスキャンするようにしたいと思います。

ありがとうございます。

答えて

1

BLEスキャンは、まったく電力を使用しません。特にWi-Fiが有効になっている以上のことではありません。 https://developer.android.com/reference/android/bluetooth/le/ScanSettings.Builder.html#setScanMode(int)に記載されているように、SCAN_MODE_LOW_POWER、SCAN_MODE_BALANCEDまたはSCAN_MODE_LOW_LATENCYから選択できます。ただし、最高のデューティ(SCAN_MODE_LOW_LATENCY)でスキャンすると、無線が占有されるため、Wi-Fiスループットに悪影響を与える可能性があります。

アクティビティがシャットダウンされていてもアプリが確実に動作するようにするには、プロセス内でフォアグラウンドサービスを実行できます(https://developer.android.com/guide/components/services.html#Foreground)。一部の中国語の電話(Xiaomi、Oppoなど)では、ユーザーはシステム設定に入り、アプリのバックグラウンド実行を有効にする必要があることに注意してください。

+0

ありがとうございます!私の問題は私がXiaomiの電話を使用していることです。変更する方法は、設定>権限>自動起動>自動起動するアプリを選択します。 – jwen

0

いつもスキャンする必要がありますか?とてもマッシュな力を浪費します。 Androidタスクマネージャは、アプリケーションとアプリケーションのサービスを強制終了できます。 私はそれが達成できないと思います。

関連する問題