趣味は車輪の再発明♪

サービスの実装 - [ Android / java(Android) ]


「小さな小さなサンプル&スニペット」
▲インデックスへ戻る▲
カテゴリ:「Android」

アンドロイドのバックグラウンドサービスを実装する方法

import android.content.Context;
import android.content.Intent;
import android.os.IBinder;

public class MyService extends android.app.Service {
	
	/**
	 * サービスバインダークラスの定義。
	 * onBindでこのクラスのインスタンスを返せば、
	 * バインド元のサービスコネクションへ渡される。
	 */
	class MyBinder extends android.os.Binder {
		MyService getService() {
            return MyService.this;
        }
    }
	
	/**
	 * このサービスがActivityにバインドされた場合に呼ばれる。
	 * サービスバインダーを生成して返す。
	 */
	@Override
	public IBinder onBind(Intent intent) {
		return new MyBinder();
	}
	
	@Override
	public void onCreate() {
		//
		//【サービスが生成された時の処理】
		//
		//	システムサービスの取得
		//	システムサービスのブロードキャストレシーバーの生成
		//
	}
	
    @Override
    public void onStart(Intent intent, int StartId) {
    	//
    	//【サービスの開始処理】
    	//
    	//	システムサービスのブロードキャストレシーバーを登録
    	//	ワーカースレッドの開始
    	//	e.t.c.
    	//
    }
    
    @Override
    public void onDestroy() {
    	//
    	//【サービスの終了処理】
    	//
    	//	ワーカースレッドの終了
    	//	システムサービスのブロードキャストレシーバーを登録解除
    	//	e.t.c.
    	//
    }
}		

小さくないですがスミマセン。

Androidのサービスはユーザーインタフェースを持たず、バックグラウンドで処理をおこなうものです。

アクティビティからサービスを利用するには、サービスが提供するサービスバインダーによって接続し、サービスのパブリックメソッドを呼び出してもらうことで実現できます。

サービスからアクティビティに対してメッセージを送るには、インテントをブロードキャストすることでおこなえます(ここでは例を示していません)

カテゴリ「Android」の他のエントリ:
| サービスとのバインド |



RSS Feed Widget
サービスの実装 - [ Android / java(Android) ]
(http://bicycle.life.coocan.jp/takamints/index.php/snippets/snippet/android/implementservice/android.java)
by Koji Takami ( email: vzg03566@gmail.com, GitHub: takamin )