実現したいこと
前提:AndroidとOBD2はペアリングされた状態で、アプリはタスクkill状態(プロセスは完全には死んでいない状態)
たとえば、車に乗ったタイミングでOBD2とAndroid端末がアプリを介さずに接続を開始し、
(その接続をブロードキャストレシーバーで検知しているのだと思われる)
アプリによりサービスを開始する。
というアプリが世に存在するのですが、これはどのように実現されているのでしょうか。
通知が来ていないため、フォアグラウンドサービスを常に実行し続けているというわけではなさそうです。
OBD2の電源がONになった場合、Android端末と、OBD2が自動で接続されるようにするには、
OBD2側の設定に依存するのでしょうか。それとも
アプリを介した初回の接続フローで、自動で接続をするような接続の仕方ができるのでしょうか?
発生している問題・分からないこと
車に乗ったタイミングでOBD2とAndroid端末がアプリを介さずに接続を開始するようなアプリを作りたいのですが、方法がわかりません。
実現方法をご存知の方がいたらご教授いただきたいです。
よろしくお願いいたします!
該当のソースコード
特になし
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
一度ペアリング済みのOBD2なので、アプリを介さなくても、
OSと自動で接続を開始してくれると思っていたのですが、
アプリをタスクkillしてしまうと、OBD2と再接続が行われませんでした。
補足
currentDevice.connectGatt(context, true, bluetoothGattCallback)
このように、autoConnectはtrueにして、自動再接続を促すようにしてあります。
![guest](/img/icon/icnUserSample.jpg)
あなたの回答
tips
プレビュー