android学习:service的创建,打开、关闭一个service

来源:互联网 发布:vivox9怎么切换4g网络 编辑:程序博客网 时间:2024/05/04 15:39

一、在mainActivity同一目录下建立echoservice,扩展自service,另外要在Androidmanifest里的application中添加上service,Androidstudio会帮你完成这一步

public class EchoService extends Service 

二、之后再mainActivity中添加两个Button,startService和stopService,和之前添加代码的方法相同,不过这里绑定点击事件的方法与之前不同,这次是用了View.OnClickListener接口,在mainActivity中写了onClick方法,用switch配合View.getID()方法来处理各个按钮的点击事件:

public class MainActivity extends AppCompatActivity implements View.OnClickListener
和打开一个新的Activity一样,实例一个Intent对象:

serviceIntent = new Intent(this,EchoService.class);

startService()stopService()两个方法来控制打开Service和关闭Service:
public void onClick(View v){        switch (v.getId()){            case R.id.startService:                startService(serviceIntent);                break;            case R.id.stopService:                stopService(serviceIntent);                break;        }    }

三、最后在EchoService中复写Service生命周期的两个方法onCreate()onDestroy(),用来标识Service的运行状态:

    @Override    public void onCreate() {        System.out.println("onCreate");        startTimer();        super.onCreate();    }    @Override    public void onDestroy() {        System.out.println("onDestroy");        stopTimer();        super.onDestroy();    }
四、service在打开后,关闭Activity不会关闭service,要用stopService方法关闭或者在安卓系统的setting里关闭。

0 0
原创粉丝点击