android – WakefulBroadcastReceiver没有从AlarmManager接收PendingIntent

android – WakefulBroadcastReceiver没有从AlarmManager接收PendingIntent,第1张

概述我在一个必须以指定间隔重复任务的应用上苦苦挣扎.如果需要,我希望它能唤醒设备.我不知道为什么,但WakefulBroadcastReceiver从不执行应该通过AlarmManager触发的onReceive方法.普通的BroadcastReceiver问题仍然存在.我使用的是Lollipop 5.0.1 Nexus5,时间间隔为5-20秒. 这是代码: class mypackage.MainA 我在一个必须以指定间隔重复任务的应用上苦苦挣扎.如果需要,我希望它能唤醒设备.我不知道为什么,但WakefulbroadcastReceiver从不执行应该通过AlarmManager触发的onReceive方法.普通的broadcastReceiver问题仍然存在.我使用的是Lollipop 5.0.1 Nexus5,时间间隔为5-20秒.

这是代码:

class mypackage.MainActivity

[...]private voID startRepeatingalarm(){    this.wbr = new SimpleWakefulbroadcastReceiver();    this.registerReceiver(wbr,new IntentFilter("mypackage.FOO_ACTION"));    Intent i = new Intent("mypackage.FOO_ACTION");    i.setClass(this,SimpleWakefulbroadcastReceiver.class);    pendingIntent = PendingIntent.getbroadcast(MainActivity.this,1234,i,PendingIntent.FLAG_CANCEL_CURRENT);          AlarmManager manager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);          manager.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP,SystemClock.elapsedRealtime(),timeInterval,pendingIntent);    Toast.makeText(this,"Alarm set",Toast.LENGTH_SHORT).show();}

class mypackage.SimpleWakefulbroadcastReceiver

public class SimpleWakefulbroadcastReceiver extends WakefulbroadcastReceiver{@OverrIDepublic voID onReceive(Context context,Intent intent) {    // This method gets NEVER called    Intent service = new Intent(context,SimpleWakefulService.class);    startWakefulService(context,service);}}
解决方法 我要把我的脖子伸到这里猜猜你没有在你的清单中宣布广播接收器:

<receiver androID:name=".SimpleWakefulbroadcastReceiver"/>
总结

以上是内存溢出为你收集整理的android – WakefulBroadcastReceiver没有从AlarmManager接收PendingIntent全部内容,希望文章能够帮你解决android – WakefulBroadcastReceiver没有从AlarmManager接收PendingIntent所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1125423.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存