当前位置:  开发笔记 > Android > 正文

未来通知的时间戳不正确

如何解决《未来通知的时间戳不正确》经验,为你挑选了0个好方法。

启动我的应用程序后,它会执行API调用,然后根据结果安排通知.这相当于约10个预定的通知.实际通知上显示的时间戳似乎存在问题.

由于我正在创建这些通知,然后使用a安排警报,AlarmManager因此通知上的默认时间将是创建通知的时间(System.currentTimeMillis()).

我试图使用.setWhen()我的方法Notification.Builder将其设置为我用来安排前面提到的警报的时间.然而,这稍微好一些,因为通知不能保证在指定的确切时间发送,我经常在过去几分钟收到通知.

另外,我尝试手动覆盖when我的通知中的字段BroadcastReceiver,在.notify()实际调用之前:

public class NotificationPublisher extends BroadcastReceiver {

    public static String NOTIFICATION_ID = "notification_id";
    public static String NOTIFICATION = "notification";

    public void onReceive(Context context, Intent intent) {

        NotificationManager notificationManager = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);

        Notification notification = intent.getParcelableExtra(NOTIFICATION);
        notification.when = System.currentTimeMillis();
        int id = intent.getIntExtra(NOTIFICATION_ID, 0);
        notificationManager.notify(id, notification);

    }
}

但是,在上面的场景中,似乎.when被忽略了.

坦率地说,我只是想找到一种方法,让通知上显示的时间戳是实际显示的时间.

推荐阅读
wangtao
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有