私は、Bluetooth通信を伴うアプリケーションを開発しています。接続を設定するアクティビティが終了しても、Bluetooth通信は続行する必要があります。まず、私はこのためにServiceを使用することを考えており、それは正しい方法であると思われました。しかし、Bluetoothのチャットの例では、通信はサービスではなく別のスレッドで行われます。私は自分のアプリでそのコードを使用し、正しく動作しています。 Bluetooth通信用スレッドを使用しているか、サービスのみを使用する必要がありますか?私のアプリがRAMに入るまで、ブルートゥース通信はアクティブでなければならず、アクティビティ間を切り替えると問題はありません。AndroidでのスレッドまたはサービスでのBluetooth通信?
4
A
答えて
0
これは、Androidのアクティビティのライフサイクルに沿っている点を除いて、別のスレッドと異なる場合がありますが、スレッドが強制終了され、状態が回復できないということです。 Androidが殺されると、Androidはサービスを再起動しようとします。
0
ご質問にお答えするには時間がかかりすぎますが、決して遅くはないと思います。 私は2つのデバイス間でブルートゥース通信を持つアプリケーションを開発しました。私は自分の経験を要約したいと思います。 サービスは非常に重くないバックグラウンドプロセスを実行したいときに通常使用するサービスです(巨大であれば)メインのUIスレッドをブロックし、OSやANRが遅くなる可能性があります。私たちが望んでいないものです。
ブルートゥースコミュニケーションはこれまで実行されていたプロセスで、スレッドを使用して実行する必要があります。これは、別のスレッドとして動作し、メインUIスレッドには影響しません。 私が間違っている場合は私を修正してください。
関連する問題
- 1. バックグラウンドでのBluetooth通信スレッド、サービス、IntentService、AsyncTask ..?
- 2. Android bluetooth通信アクセスモード?
- 3. AndroidでのBluetooth通信の流れ
- 4. Xamarin android Bluetoothの通信
- 5. AndroidでQt 5.2とのBluetooth通信
- 6. Windowsサービスの通信とスレッド
- 7. AndroidとiPhoneはBluetooth SPPプロファイルで通信できますか?
- 8. Androidスレッド通信AsyncTask
- 9. AndroidのUIスレッドと子スレッドの通信
- 10. アスタリスク+ Android、通信サービス
- 11. Android:アクティビティとサービスの通信
- 12. androidとのBluetooth通信でのエラー検出
- 13. AndroidサービスでBluetoothを接続
- 14. NodeJSとTermux経由でAndroidのBluetoothデバイスと通信する
- 15. Android bluetoothサービス名
- 16. iPhoneでのBluetooth HFP(1.5)通信
- 17. スレッドの通信
- 18. Bluetooth通信の可能性
- 19. CとのBluetooth通信
- 20. Android - Bluetoothでファイルを送信
- 21. Android <-> iOSの直接通信(Bluetooth)。出来ますか?
- 22. ASMX Webサービスの問題Windowsサービスと別のスレッドで通信する
- 23. Android用のAPI for Bluetoothの即時通知サービスFind me profile
- 24. Androidシステムサービスまたは「通常の」サービス
- 25. Androidのサービス-活動2ウェイ通信
- 26. スレッド通信とプロセス通信
- 27. Arduino UNOとMacとBluetooth通信でシリアル通信
- 28. Androidは、ブロードキャストレシーバとサービスとの通信を行い、アクティビティはサービスと通信します。
- 29. 間のスレッド通信
- 30. スレッド間の通信?
サービスではなくスレッドでブルートゥース通信を行うのが適切かどうかを誰かに教えてもらえますか?スレッドとその作業を試してみましたが、後でコードを変更する必要がないようにしたいと思います。 – sunil