正しいアプローチを決定するために助けが必要です。アプリケーション全体が中断または終了/破棄されるたびに、内部データベースのバックアップを外部ストレージ内の場所に作成したいと考えています。このメソッドを、Application を拡張する Main という中央クラスから呼び出したいと考えています。その理由は、いくつかのアクティビティを使用する必要があり、必要な場合にのみバックアップ メソッドを呼び出したいためです (アプリケーション全体が別のアプリケーションによって破棄または中断された場合など)。onPause() メソッドのすべてのアクティビティで、このバックアップ メソッドを呼び出さないようにしています。
アプリケーションの onCreate() メソッドでサービスを開始し、サービスが破棄されたときにバックアップ メソッドを開始することを考えました。しかし、サービスの背後にあるロジックを理解している限り、これは割り込みの場合には役に立ちません。また、サービスが開始されていないようです。startService(new Intent(getApplicationContext(), BackupService.class));
さらに、サービスの onDestroy() メソッドを使用するのは良いアプローチではないと思います。これは、私の意見では、サービス クラスが作成されたものではありません。
私の質問を要約すると、サービスを使用するよりも良い方法を知っていますか、そうでない場合は、アプリ全体(アクティビティだけでなく)の時点でのみバックアップを呼び出すことができるようにするためにサービスを使用する方法を知っていますか中断または破壊されます。