这个例子来自“安卓巴士”,经阅读,理解,写此文章,希望通过这篇一个Demo学完Android中所有的服务对对广大读者有所帮助。

说明:这个例子实现了Android中常见的许多服务,下面是实现的截图

接下来,以源代码的方式分析这个例子

1.MainActivity--主界面

这个类主要是实现用户所看到的这个Activity,其中包含了一系列的按钮,用户点击按钮执行相应的动作,所以在这个类中主要是对按钮的定义和对按钮绑定相应的监听器,下面是实现的代码:

packagelovefang.stadyService;importandroid.app.Activity;importandroid.os.Bundle;importandroid.widget.Button;importandroid.view.View;importandroid.content.Intent;importandroid.util.Log;/**这是使用后台服务的学习例子*/publicclassMainStadyServicsextendsActivity{/**参数设置*/ButtonstartServiceButton;//启动服务按钮ButtonshutDownServiceButton;//关闭服务按钮ButtonstartBindServiceButton;//启动绑定服务按钮ButtonsendBroadcast;//使用广播ButtonnotificationButton;//使用通知功能ButtonalarmButton;//使用闹钟ButtonhandlerButton;//使用handlerButtonasyncButton;//使用异步加载ButtonphoneStateButton;//查看手机状态ButtoncallphoneButton;//拨打电话ButtonvibratorButton;//使用震动CountServicecountService;@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);Log.v("MainStadyServics","setContentView");setContentView(R.layout.main);getWidget();regiestListener();}/**获得组件*/publicvoidgetWidget(){startServiceButton=(Button)findViewById(R.id.startServerButton);startBindServiceButton=(Button)findViewById(R.id.startBindServerButton);shutDownServiceButton=(Button)findViewById(R.id.sutdownServerButton);sendBroadcast=(Button)findViewById(R.id.sendBroadcast);notificationButton=(Button)findViewById(R.id.notification);alarmButton=(Button)findViewById(R.id.alarm);handlerButton=(Button)findViewById(R.id.handler);asyncButton=(Button)findViewById(R.id.async);phoneStateButton=(Button)findViewById(R.id.phonestate);callphoneButton=(Button)findViewById(R.id.callphone);vibratorButton=(Button)findViewById(R.id.vibrator);}/**为按钮添加监听*/publicvoidregiestListener(){startServiceButton.setOnClickListener(startService);shutDownServiceButton.setOnClickListener(shutdownService);startBindServiceButton.setOnClickListener(startBinderService);sendBroadcast.setOnClickListener(broadcastReceiver);notificationButton.setOnClickListener(notification);alarmButton.setOnClickListener(startAlarm);handlerButton.setOnClickListener(handler);asyncButton.setOnClickListener(async);phoneStateButton.setOnClickListener(phonestate);callphoneButton.setOnClickListener(callphoneEvent);vibratorButton.setOnClickListener(vibrator);}/**启动服务的事件监听*/publicButton.OnClickListenerstartService=newButton.OnClickListener(){publicvoidonClick(Viewview){/**单击按钮时启动服务*/Intentintent=newIntent(MainStadyServics.this,CountService.class);startService(intent);Log.v("MainStadyServics","startService");}};/**关闭服务*/publicButton.OnClickListenershutdownService=newButton.OnClickListener(){publicvoidonClick(Viewview){/**单击按钮时启动服务*/Intentintent=newIntent(MainStadyServics.this,CountService.class);/**退出Activity是,停止服务*/stopService(intent);Log.v("MainStadyServics","shutDownserveice");}};/**打开绑定服务的Activity*/publicButton.OnClickListenerstartBinderService=newButton.OnClickListener(){publicvoidonClick(Viewview){/**单击按钮时启动服务*/Intentintent=newIntent(MainStadyServics.this,UseBrider.class);startActivity(intent);Log.v("MainStadyServics","startBinderService");}};/**打开广播学习的按钮*/publicButton.OnClickListenerbroadcastReceiver=newButton.OnClickListener(){publicvoidonClick(Viewview){Intentintent=newIntent(MainStadyServics.this,UseBroadcast.class);startActivity(intent);Log.v("MainStadyServics","startbroadcast");}};/**打开通知*/publicButton.OnClickListenernotification=newButton.OnClickListener(){publicvoidonClick(Viewview){Intentintent=newIntent(MainStadyServics.this,UseNotification.class);startActivity(intent);Log.v("MainStadyService","startNotification");}};/**使用闹钟*/publicButton.OnClickListenerstartAlarm=newButton.OnClickListener(){publicvoidonClick(Viewview){Intentintent=newIntent(MainStadyServics.this,UseAlarmManager.class);startActivity(intent);Log.v("MainStadyService","startalarm");}};publicButton.OnClickListenerhandler=newButton.OnClickListener(){publicvoidonClick(Viewview){Intentintent=newIntent(MainStadyServics.this,UseHandleMessage.class);startActivity(intent);Log.v("MainStadyService","starthandle");}};publicButton.OnClickListenerasync=newButton.OnClickListener(){publicvoidonClick(Viewview){Intentintent=newIntent(MainStadyServics.this,UseAsyncTask.class);startActivity(intent);Log.v("MainStadyService","starthandle");}};publicButton.OnClickListenerphonestate=newButton.OnClickListener(){publicvoidonClick(Viewview){Intentintent=newIntent(MainStadyServics.this,UsePhoneState.class);startActivity(intent);Log.v("MainStadyService","startphonestate");}};publicButton.OnClickListenercallphoneEvent=newButton.OnClickListener(){publicvoidonClick(Viewview){Intentintent=newIntent(MainStadyServics.this,UseActionCall.class);startActivity(intent);Log.v("MainStadyService","startcallphone");}};publicButton.OnClickListenervibrator=newButton.OnClickListener(){publicvoidonClick(Viewview){Intentintent=newIntent(MainStadyServics.this,UseVibrator.class);startActivity(intent);Log.v("MainStadyService","startcallphone");}};/***/protectedvoidonDestroy(){super.onDestroy();Intentintent=newIntent(MainStadyServics.this,CountService.class);/**退出Activity时,停止服务*/stopService(intent);}}


更多相关文章

  1. android 和云计算
  2. Android搜索框输入内容点击键盘的搜索按钮进行搜索
  3. amdroid push
  4. Android(安卓)错误信息捕获发送至服务器【原创】
  5. android冷启动与热启动面试知识小结
  6. android四大组件之Service服务之总体概述
  7. Android(安卓)访问FTP 服务器,实现文件的下载
  8. Android系统中aidl的理解和service的添加
  9. android版PDA通过USB与.net应用程序通讯,实现离线版android应用同

随机推荐

  1. Android(安卓)TextUtils类介绍
  2. Android(安卓)实现json网络数据通过BaseA
  3. AES加解密算法在Android中的应用及Androi
  4. android背景选择器selector用法汇总
  5. android添加广告之--有米
  6. 如何改变Android(安卓)Progressbar默认颜
  7. android常用布局
  8. Android开发环境搭配
  9. Android经典的大牛博客推荐
  10. Android图片的固定大小显示