私の調査によると、Androidでサービスを実行する方法は3つあると思います。
- アプリケーションのメインスレッド。
- アプリケーションのメインスレッドとは別のスレッド。
- 完全に別のプロセスで。
私の目標は、画像に対してOCRを実行し、テキストを返す機能を備えたアプリを作成することです。私のプロトタイプは、デュアルコアCPUを搭載した電話でOCRを実行するのに長い時間がかかるため、オプション1が出ていることはわかっています。スレッド化とサービスの別のプロセスのこのトピックに関する議論を見つけることができませんでした。
では、オプション2と3の長所と短所は何ですか?
編集:画像からテキストが表示されたらサービスを終了したいので、IntentServiceを使用する可能性があります。