最初の質問: アクティビティではビュー コンテンツのみを実装する必要があることはわかっていますが、より長い計算プロセスごとに独自のサービスを開始するのは通常ですか?
2 番目の質問: サービスとの通信は、コードで非常に広範囲に及びます。サービスでメソッドを呼び出したい場合は、IPC メカニズムの穴を認識しなければなりませんか?? または、AIDL ファイルを使用せずにローカル サービスでメソッドを呼び出すこともできますか?
最初の質問: より長い計算プロセスのために AsynTask を開始できます。サービスは通常、アプリケーションがバックグラウンドで動作するときに使用されます。
2 番目の質問: サービスで任意のメソッドを呼び出すことができます。idle を使用すると、複数のアプリケーションでサービスを利用できるようになります。単純なサービスの場合はそうではありません。また、サンプル サービスはアクティビティと同じアプリケーション プロセスで実行されます。アイドルサービスの場合ではありません。
実行するタスクに応じて、AsyncTask
またはの使用を検討してくださいIntentService
。通常の使用Service
は、ここでのニーズに最も適していないはずです。
レギュラーを使用するService
と、データや引数などを簡単に渡すことができますIntent
。これには IPC は必要ありません。