Andriod Service基本用法篇

本文详细介绍了如何在Android应用中创建并使用Service。包括定义Service类、在AndroidManifest.xml中声明Service、通过startService启动及stopService停止Service的方法,并附带示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基本步骤:

第一步:创建Service,定义类继承Service;
第二步:AndroidManifest.xml中定义<service>;
第三步:开启Service,在其他组件中调用startService方法
        startService(intent);(在activity中可以直接调用),会执行onstartCommand(生命周期方法),如果发现service还没有,就会先创建执行oncreate。
        onCreate只会执行一次,服务一旦被创建出来,就不会再执行onCreate方法,以后再去开启服务只会执行onStartCommand。
第四步:停止Service,调用stopService方法,会执行onDestory()(生命周期方法)。

例子:

第一步:创建服务,重写onCreate、onStartCommaand、onDestroy三个事件

public class MyService extends Service {

	public static final String TAG = "MyService";  	

	@Override
	public void onCreate() {		
		super.onCreate();
		Log.d(TAG, "onCreate() executed");  
	}
	
	@Override
	public int onStartCommand(Intent intent, int flags, int startId) {
		Log.d(TAG, "onStartCommand() executed"); 
		return super.onStartCommand(intent, flags, startId);
	}
	
	@Override
	public void onDestroy() {
		Log.d(TAG, "onDestroy() executed");  
		super.onDestroy();
	}
	
	@Override
	public IBinder onBind(Intent arg0) {
		
		return null;
	}
}

第二步:将Service加入xml文件

       <service android:name="com.example.mygps.MyService">            
       </service>

第三步:启动服务

	private void startServiceClickListener() {
		btnstart.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				Intent intent=new Intent(MainActivity.this, MyService.class);
				startService(intent);
			}
		});
	}

单击开启服务,第一次显示OnCreate、onStartCommand执行,以后,只显示onStartCommand执行。

第四步:关闭服务

private void stopServiceClickListener() {
		btnstop.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				Intent intent=new Intent(MainActivity.this, MyService.class);
				stopService(intent);
			}
		});
	} 

单击结束服务,显示onDestroy执行。
框架测试完毕,可以写自己的服务了。 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值