android 8.0隐式广播,具有广播接收器和隐式广播禁止的with安卓 8.0奥奥兰 AlarmManager_broadcastreceiver_开发99编程知识库...

我有重要的提醒是通过警报管理器( 它应该与闹钟应用程序的功能相同) 设置的。

以前我在我的Android清单中有以下内容:

广播接收器:public class AlarmReceiver extends BroadcastReceiver {

@Override public void onReceive(

final Context context,

final Intent intent) {

//WAKE LOCK

//BUILD NOTIFICATION etc...

}

}

如何设置警报:final PendingIntent operation = PendingIntent.getBroadcast(

mContext,

requestCode,

intent,

PendingIntent.FLAG_CANCEL_CURRENT);

if (PlatformUtils.hasMarshmallow()) {

alarmManager.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP, triggerAtMillis, operation);

} else {

alarmManager.setExact(AlarmManager.RTC_WAKEUP, triggerAtMillis, operation);

}

}

在Android中,我不能再使用隐式广播作为清单中的定义。 没错,给出的替代方法是手动的register,如下所示:final BroadcastReceiver receiver = new AlarmReceiver();

final IntentFilter intentFilter = new IntentFilter(ALARM_RECEIVER_INTENT_TRIGGER);

context.registerReceiver(receiver, intentFilter);

这对我来说似乎不符合逻辑。

警报接收器将被绑定到上下文的生存期。 当应用程序因内存压力或者设备重新启动而被杀死时,这导致了一个问题。 我每次都需要我的警报,因为它们对用户的健康至关重要。

即使我听 "。android 。intent 。action 。boot_completed"和 register,我的闹钟也很快被杀死,而且没有触发警报。 我也没有看到我的闹钟

adb shell dumpsys警报

如何创建一个自定义广播接收器,该接收器接收一个隐式广播来激发( 8.0 )的警报。 有人能给我一个代码示例或者链接到文档。 如何在定位时及时或者任何其他闹钟应用功能?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值