私はまだプログラミングに非常に慣れていないため、メインスレッド、非同期タスク、サービス、スレッドの概念を完全には理解していないため、質問を許してください。メインスレッドからいくつかのタスクを実行したいので、Services for Android に関するドキュメントを読んでいます。それは言います:
メイン スレッドの外で作業を実行する必要があるが、ユーザーがアプリケーションと対話している間のみ実行する必要がある場合は、サービスではなく新しいスレッドを作成する必要があります。
1.アプリを終了するとすぐに「スレッド」が停止すると言っていますか (例: ホーム ボタン)?
たとえば、アクティビティの実行中にのみ音楽を再生したい場合は、onCreate() でスレッドを作成し、onStart() で実行を開始し、onStop() で停止します。従来の Thread クラスの代わりに、AsyncTask または HandlerThread の使用も検討してください。スレッドの詳細については、プロセスとスレッドのドキュメントを参照してください。
2.スレッドが Java に組み込まれている場合、Android に AsyncTasks があるのはなぜですか?
サービスを使用する場合でも、デフォルトではアプリケーションのメイン スレッドで実行されるため、集中的な操作やブロック操作を実行する場合は、サービス内に新しいスレッドを作成する必要があります。
3.これは基本的に、ほぼすべてのサービスの内部にスレッドが作成されるということですか?
4.サービス内で AsyncTask を開始するのは悪いことですか?