gpt4 book ai didi

Android通知AlarmManager和BroadcastReceiver

转载 作者:行者123 更新时间:2023-11-30 01:40:53 25 4
gpt4 key购买 nike

我的 AlarmManager 似乎没有工作。

这是我设置闹钟的代码:

        Intent intent1 = new Intent(this, Notify.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent1, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager am = (AlarmManager) this.getSystemService(this.ALARM_SERVICE);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.set(Calendar.MINUTE, 20);
am.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_FIFTEEN_MINUTES, pendingIntent);

这是我的 Notify 类:

   public class Notify extends BroadcastReceiver {
public static final int uniqueID=3657554;
@Override
public void onReceive(Context context, Intent intent) {
NotificationCompat.Builder n=new NotificationCompat.Builder(context);
n.setAutoCancel(true);
n.setSmallIcon(R.mipmap.ic_launcher);
n.setTicker("ticker");
n.setWhen(System.currentTimeMillis());
n.setContentTitle("title");
n.setContentText("text");
Intent it=new Intent(context,ListAll.class);
PendingIntent pi=PendingIntent.getBroadcast(context,0, it,0);
n.setContentIntent(pi);
((NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE)).notify(uniqueID,n.build());
}

我的 list 中有以下内容:

<uses-permission android:name="com.android.alarm.permission.SET_ALARM"/>
<receiver android:name=".Notify" android:enabled="true" />

我没有任何异常(exception),但通知没有显示。

最佳答案

使用此代码设置闹钟

Intent alarmIntent = new Intent(this, YourActivity.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, alarmIntent, 0);

AlarmManager manager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);

Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.set(Calendar.HOUR_OF_DAY, 20); // '8pm'
calendar.set(Calendar.MINUTE, 30);
calendar.set(Calendar.SECOND, 1);

manager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),
AlarmManager.INTERVAL_DAY, pendingIntent);

关于Android通知AlarmManager和BroadcastReceiver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34517629/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com