2013年7月16日火曜日

Serviceの使い方

呼ばれる側
・public class MainService extends Service {で、Serviceを継承する。
・開始時はonStartCommand()が呼ばれる。
・終了時はonDestroy()が呼ばれる

呼ぶ側
・開始方法
 Intent intent = new Intent(MainActivity.this, MainService.class);
 startService(intent);
 Intentの引数で、自分のインスタンス、呼びたいクラスを書いてstartServiceを呼ぶ。
・終了方法
 Intent intent = new Intent(MainActivity.this, MainService.class);
 stopService(intent);
 同じようにstopServiceを呼ぶ。intentは同じインスタンスでなくてよいらしい。
 (少しなぜだろうと思います)




Activityでのアプリケーションではタスクを落とされちゃうからServiceを使うのです。
タスクは落とされなくていいと思うのですが、なんでこういうしようなのかと
コーディングするといつも思います。
リソースの少ないスマホだからとはいってもベースとなるlinuxが開発された当初のパソコンは
もっともっとリソースが少ないと思うのです。
なんてことをいつも思いつつ、OSには従うのです。はい。