源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

android 定时启动\取消小例子

  • 时间:2021-11-21 05:39 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:android 定时启动\取消小例子
[u]复制代码[/u] 代码如下:
Intent intent = new Intent("cn.pocketdigi.update.alarm"); intent.setClass(this, AlarmReceiver.class); PendingIntent pi=PendingIntent.getBroadcast(this, 0, intent,0); //设置一个PendingIntent对象,发送广播 AlarmManager am=(AlarmManager)getSystemService(ALARM_SERVICE); //获取AlarmManager对象 // am.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()+3500, pi);//只执行一次 am.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()+3500, 10000, pi); //重复执行
[u]复制代码[/u] 代码如下:
<receiver android:name=".AlarmReceiver"> <intent-filter> <action android:name="cn.pocketdigi.update.alarm" /> </intent-filter> </receiver>
[u]复制代码[/u] 代码如下:
public class AlarmReceiver extends BroadcastReceiver { private static final String TAG = "AlarmReceiver"; @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub Log.v(TAG, "收到广播"); // Intent it=new Intent(context,AlarmActivity.class); // it.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); // context.startActivity(it); //收到广播后启动Activity,简单起见,直接就跳到了设置alarm的Activity //intent必须加上Intent.FLAG_ACTIVITY_NEW_TASK flag } }
取消方式:
[u]复制代码[/u] 代码如下:
Intent intent = new Intent("cn.pocketdigi.update.alarm"); intent.setClass(this, AlarmReceiver.class); PendingIntent pi=PendingIntent.getBroadcast(this, 0, intent,0); AlarmManager alarm=(AlarmManager)getSystemService(ALARM_SERVICE); alarm.cancel(pi);
另外一种intent方式 代码
[u]复制代码[/u] 代码如下:
Intent intent =new Intent(Main.this, alarmreceiver.class); intent.setAction("repeating"); PendingIntent sender=PendingIntent .getBroadcast(Main.this, 0, intent, 0); //开始时间 long firstime=SystemClock.elapsedRealtime(); AlarmManager am=(AlarmManager)getSystemService(ALARM_SERVICE);  //5秒一个周期,不停的发送广播 am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP , firstime, 5*1000, sender);
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部