Android 四大组件学习之Server一

上次学习了Android四大组件Activity之后,我们深刻理解了Activity。这次我们学习四大组件Service。

Service与Activity的级别是一样的,都是Android系统必不可少的,也是非常重要的。但是还是有区别的。Activity是与用户交互的重要组件,所以可以说明Activity是有界面的,存在于前台。而Service确实没有 界面的,一直存在与后台,默默无闻的奉献者。

和学习Activity一样,本节学习如何创建一个Service,以及如何配置Service

第一步创建一个MyService并且继承Service类,(是不是和我们的activity很相似)

创建后如下图所示:

创建后的服务也需要到配置文件中配置,这是不是和Activity也很相似

 <service android:name="com.ui.service.MyService"></service>
这样一个Service算是创建成功了,那如何去启动一个Service呢? 因为Service是没有界面的,是运行在后台的。我们可以用打印观察。启动service需要借助与Activity

我们创建一个MyActivity

public class MyActivity extends Activity {

	private Button btn_start;
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_myservice);
		
		btn_start = (Button)findViewById(R.id.button1);
		btn_start.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				Intent intent = new Intent(MyActivity.this, MyService.class);
				startService(intent);
			}
		});
	}
}
布局文件就一个Button用来启动Service

同时我为MyService中添加了几个方法:

public class MyService extends Service {

	@Override//必须实现的方法
	public IBinder onBind(Intent arg0) {
		// TODO Auto-generated method stub
		return null;
	}
	
	@Override//被创建时的调用
	public void onCreate() {
		// TODO Auto-generated method stub
		super.onCreate();
		Log.i("MyService", "onCreate------------");
	}
	
	@Override
	@Deprecated//OnStart方法现在被OnStartCommd已经取代,其实在OnStartCommand也调用了OnStart
	public void onStart(Intent intent, int startId) {
		// TODO Auto-generated method stub
		super.onStart(intent, startId);
		Log.i("MyService", "onStart------------");
	}
	
	
	@Override//启动时会调用
	public int onStartCommand(Intent intent, int flags, int startId) {
		// TODO Auto-generated method stub
		Log.i("MyService", "onStartCommand------------");
		return super.onStartCommand(intent, flags, startId);
	}
}


当我点击Button按钮是,就会启动Service


ok, 关于Service的创建本节就说道这里



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值