1.
public class AlarmActivity extends Activity implements OnClickListener {
private Button b_call_service, b_exit_service;
private Intent intent;
private PendingIntent p_intent;
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
b_call_service = (Button) findViewById(R.id.call_alarm_service);
b_call_service.setOnClickListener(this);
b_exit_service = (Button) findViewById(R.id.exit);
b_exit_service.setOnClickListener(this);
intent = new Intent(this, AlarmReceiver.class);
p_intent = PendingIntent.getBroadcast(this, 0, intent, 0);
}
public void onClick(View arg0) {
if (arg0 == b_call_service) {
setTitle("Waiting... 5s后Alarm启动");
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.add(Calendar.SECOND, 5);
AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), p_intent);
}
if (arg0 == b_exit_service) {
setTitle("Alarm关闭");
AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
am.cancel(p_intent);
}
}
}
public class AlarmReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent i) {
context.startService(new Intent(context, AlarmService.class));
}
}
public class AlarmService extends Service {
public IBinder onBind(Intent intent) {
return null;
}
public void onCreate() {
// 只在创建时执行一次
}
public void onStart(Intent intent, int startId) {
// 可执行多次
Toast.makeText(this, "hello 土豆", Toast.LENGTH_LONG).show();
}
}
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name="AlarmActivity" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name="AlarmReceiver" />
<service android:name="AlarmService" />
</application>
2.
分享到:
相关推荐
broadcast和service的demo
Service,Broadcast学习实例
Android Activity、Service、Broadcast、Notification四合一例子,Activity中点击按钮启动服务,服务里每4秒发送一次广播,广播接受者每接受到一个发送一条通知。
Android创建Service后台常驻服务并使用Broadcast通信,即基于Broadcast通信方式实现了一种Service Thread与Activity异步工作的方法。
本示例 利用Broadcast Receiver 启动Service,在这里同时又启动了一个Activity用于提示服务启动成功
四大组件 Activity Service content provider broadcast receiver
Technical realization of Cell Broadcast Service
Service与多个Activity通过Broadcast进行交互
一个将Handler+Service+Broadcast+ListView一起综合起来使用的工程,可以帮助更熟练的使用Service和Broadcast以及ListView,对Handler的了解及运行机制更深入的了解~
android 后台启动service监听某个函数的状态是否发生改变,如果改变则 通过broadcast通知Myreceiver,启动另一个activity
简单的实现service和activity共享数据
broadcast; 通过broadcast开机启动service; sendorderedbroadcast; broadcast生命周期; 权限控制启动;
本项目将Android中的Intent总结了一遍。主要有四个项目,Intent_Intent项目是简单的Intent跳转(setActivityResult);Intent_broadcast主要是静态广播的注册;Intent_broadcastdynamic主要介绍动态广播的注册;...
利用广播Broadcast Receiver,在2个不同的Activity传递数据
本案例简单讲述android的BroadcastReciver使用方式,包括注册广播的两种方式
在Android开发中很少有activity service broadcast 单例的综合使用,我写的这个例子已经能运行了希望能和大家交流学习
适合初学者,service and broadcast 的一个简单例子,module 导入AS即可
android service 通过broadcast通知activity.zip
PROGRAM TO IMPLEMENT BROADCAST ROUTING ALGORITHM
broadcast_Android 广播机制broadcast用法实例.rar