1. ホーム
  2. android

[解決済み] Android Serviceを複数回起動した場合はどうなりますか?

2022-07-19 03:37:31

質問

以下のようなコードがあった場合。

Intent intent = new Intent(this,DownloadService.class);     
for(int i=0;i<filesArray.length;i++){        
     startService(intent);          
}

このコードでは DownloadServiceIntentService .

というわけで、今私が startService(intent) を呼び出すたびに新しいサービスを開始するということでしょうか? startService(intent) が呼ばれるたびに新しいサービスを開始するということなのでしょうか? DownloadService は一度実行され、その後 startService(intent) を呼び出すたびに、異なる startId を持つ異なるインテントが渡されるだけです。

これは意味があるのでしょうか、そしてこれらのうちどれがそうなのでしょうか?

どのように解決するのですか?

本サービスは、1つのインスタンスでのみ実行されます。しかし、サービスを起動するたびに onStartCommand() メソッドが呼び出されます。

これは、文書化された はこちら