本帖最后由 JY-DX-JY 于 2015-9-24 19:06 编辑
我在学习安卓,看书,第七章:服务与消息广播
本地服务通信。
新建了一个项目,布局文件里添加了三个按钮,一个启动Service,一个停止Service,一个获取数据。
定义了一个Service3子类,使它继承于Service类,主要代码如下:
public class Service3 extends Service {
private int counter=0;
private boolean bRunning=true;
private mBinder binder=new mBinder(); //定义onBinder返回的对象
public class mBinder extends Binder{ //通过继承实现Binder类
public int getCounter(){
return counter;
}
}
@Override
public IBinder onBind(Intent arg0){
return binder; //返回IBinder对象
}
@Override
public boolean onUnbind(Intent intent) {
// TODO Auto-generated method stub
return super.onUnbind(intent);
}
@Override
public void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
bRunning = false;
}
@Override
public void onCreate() {
Exception e;
// TODO Auto-generated method stub
super.onCreate();
new Thread(new Runnable() { //启动线程,修改counter值
public void run() {
// TODO Auto-generated method stub
while (!bRunning) {
try {
Thread.sleep(1000);
} catch (Exception e) {}
counter++;
}
}
}) .start();
}
}
|