0

ブロードキャストをリッスンしてブロードキャストを送信するアプリケーションがあります。
アプリケーションがブロードキャストを送信するとき、別のアプリケーションからブロードキャストが返されることを期待します。

受信機でブロードキャストをキャッチし、コンテンツを「decode」と呼ばれる通常の Java クラスに送信します。ここではブロードキャストの内容を確認し、mainActivity のメソッドを呼び出して別のアクティビティを起動します。

この mainActivity には実際の UI がないため、これを置き換えるサービスを作成することを考えていました。したがって、decode から mainActivity を呼び出す代わりに、サービスを作成し、そのサービスからメソッドを呼び出します。

さて、私はAndroidサービスの経験がないので、これはサービスを使用する良いケースですか?
Android サービスの良い例はどこにありますか?

4

1 に答える 1

1

その通りです。の外部からメソッドをService呼び出してはならないので、ここで を使用します。テンプレートとして最も基本的なものを提供します。その後、好きなように追加できます。ActivityActivityService

public class MyService extends Service{

    @Override
    public IBinder onBind(Intent intent) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override 
    public void onCreate() {
        super.onCreate();
        Log.i("daim", "MyService has started ...");
        startMyMethod();    
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        Log.e("daim", "MyService has stopped ...");    
    }

    public void startMyMethod(){
        // do your work
    }
}

このサービスを開始するには メソッドを呼び出し、サービスstartServiceを停止するには メソッドを呼び出しますstopService。たとえば、作業が完了したときに、サービス内でサービスを停止する場合。stopSelf();サービスメソッド内で呼び出すことができます。どのパラメータが必要であるか、および の内部にいるかどうかに応じてそれらを呼び出す方法を確認するには、startServiceGoogleで検索してください。クラスの内部から呼び出す場合は、ここで必要になる場合があります。stopServiceActivityContext

http://developer.android.com/reference/android/app/Service.html

于 2012-10-09T10:27:30.803 に答える