私が作成したオブジェクトがあるとします。と呼びますMyObject
。
MyObject
データベースの対応するテーブルに保存できるようにしたいと思います。Activity
のメインスレッドでこれが発生しないようにします。簡単です。これを行うために を作成しましたAsyncTask
。
ただし、私のアプリケーションにはIntentService
、デバイスのデータベースとクラウド データベースの間でデータを同期するために使用されるものもあります。MyObject
クラウドからデバイスのデータベースに同期した もここから保存したいと思います。ただし、これが で非同期に発生することは望ましくありませんIntentService
。IntentService
のメインスレッドで発生させたいです。
目的は明らかに、このコードをモジュール化して、複製する必要がないようにすることです。
セーブ コードをモジュール化して、非同期と同期の両方で呼び出せるようにするにはどうすればよいですか?
saveMe()
内にメソッドを作成し、MyObject
それを と宣言すると思いますstatic
。から、IntentService
単に を呼び出しますsaveMe()
。からActivity
を起動し、AsyncTask
を渡し、MyObject
を呼び出しますsaveMe()
。そうですか?