私のアプリケーションは、サービスを作成する 1 つのアクティビティで構成されています。アプリケーションが実行されている限り、サービスを実行し続けたい。知っている:
- Android システムはメモリ不足の状態でアクティビティを強制終了する可能性があり、アクティビティがバックグラウンドにある場合は保証されません。
- サービスは、システムによって停止 (および強制終了) される可能性があります。
- サービスをアクティビティにバインドすると、サービスが停止または開始された場合にアクティビティが通知を受け取ります。ただし、アクティビティがバックグラウンド (onStop()) になると、サービスの実行が停止する場合があります。ここで間違っている場合は修正してください。
- アクティビティの onResume() でサービスにバインドし、onStop() で unbind() にバインドすると、アプリケーションがバックグラウンドになったときにサービスの実行が停止することがあります。アクティビティの onCreate() と onDestroy() で unbind() にバインドすると、バックグラウンドであってもアクティビティがサービスから通知を受け続けることになります。
- アプリケーションが実行されている限り、サービスを実行し続け、サービスからアクティビティへの通知を受け取る最良の方法は何ですか? アプリケーションにはアクティビティが 1 つしかないため、バックグラウンドでアクティビティを送信すると、アプリケーションがバックグラウンドになることに注意してください。
ありがとう