概念の証明として、特定のIoTデバイスからの接続を処理するために非常に単純なTCPサーバーをバックグラウンドで実行するAndroidアプリを実装しています。また、IoTデバイスにデータを戻すために、特定のアクティビティからサーバーと通信する必要があります。 バックグラウンドでサーバーを実行するにはどうすればよいですか? AsyncTasks、スレッド、およびAndroidサービスがあります。最善のアプローチは何でしょうか?AndroidアプリでTCPサーバーを実行する
1
A
答えて
1
あなたの目的がフォアグラウンドになっている間にTCPポートだけでリッスンすることを目的としている場合は、そのアクティビティにスレッドをフォークするだけです。
UIがバックグラウンドのときにアプリケーションがTCPポートでリッスンするようにするには、スレッドをフォークするサービスを使用します。
AsyncTask
およびIntentService
は、トランザクション処理(ディスクI/O、Webサービスコールなど)には適していますが、不定期使用には適していません。
また、オープンポートを使用するとセキュリティ上の問題が発生することに注意してください。
関連する問題
- 1. TCPサーバーでストレステストを実施
- 2. アプリをAndroidでキオスクモードで実行する
- 3. PiPモードでAndroidアプリを実行する
- 4. ウェブサーバー上で常にTCPサーバーを実行しています
- 5. nodejsアプリ内でnodejs tcpサーバーを起動する
- 6. STM32F107VC FreeRTOSをTCPで実行する
- 7. タイトルバーなしでAndroidアプリを実行
- 8. Debianシステムでのログイン時に単純なPython TCPサーバーを実行する
- 9. Java TCPサーバー - Androidクライアントのパケット損失
- 10. Android Unityアプリがバックグラウンドで実行中
- 11. Androidでアプリを殺すとメソッドを実行する
- 12. Androidはプログラマティックに実行できるアプリを制限する
- 13. USB経由でAndroidスタジオのハードウェアデバイスでAndroidアプリを実行
- 14. C#System.OutOfMemmoryException TCPサーバーで
- 15. AndroidスタジオでAndroidアプリを実行するには、Gradleが必要ですか?
- 16. Android携帯でJ2MEアプリを実行する
- 17. 下位APIターゲットエミュレータでAndroidアプリを実行する方法は?
- 18. 「殺した」の後にバックグラウンドでAndroidアプリを実行する
- 19. android stoduioでアプリを開かずに実行するには?
- 20. Androidでionic v1アプリを実行するには?
- 21. エミュレータ以外のデバイスでのみAndroidアプリを実行する
- 22. Androidアプリを実行しないでEclipseにインストールする
- 23. Android Studioでアプリを実行中にDuplicatedErrorが発生する
- 24. カスタムAndroidアプリで音声認識機能を実行する
- 25. ツイスト:デュアルスタックtcpサーバーですか?
- 26. Cordovaコマンドを実行しているエラー(Androidデバイスで実行中のMaka-CLIアプリ)
- 27. いつもアプリをAndroidでバックグラウンドで実行し続ける
- 28. AndroidアプリでLeadboltを実装する
- 29. Android:すべてのAndroid携帯でアプリを実行する方法
- 30. バックグラウンドで実行されているアプリのスクリーンショットを撮る - android
ありがとうございます。私の目的は、自分の活動がフォアグラウンドにある間だけTCPポートでリッスンすることです。したがって、サーバータスクを別のスレッドで作成するのが最善でしょうか?しかし、私はどのようにそれとコミュニケーションをとるだろうか? – Javiator
@Javiator:何と連絡しますか? 'INTERNET'パーミッションを気にする必要がなく、モバイルデバイスがモバイルであることを心配する必要がある(そしてネットワーク間で切り替える)必要がある以外に、従来のJavaでソケットを実装することとは異なるAndroid実装ソケットについては何もありません。そして、Javaプログラムは、20年の間、より良い部分でインターネットと連携してきました。 Androidで動作し、特定のニーズを満たすライブラリを探します。 – CommonsWare
私はすべての活動からメッセージを継続的に聞く必要があります。サービスでTCPサーバを稼働させてもよろしいですか? –