gpt4 book ai didi

android - 使用报警管理器启动服务

转载 作者:太空狗 更新时间:2023-10-29 12:57:12 26 4
gpt4 key购买 nike

我有一些代码要在每天凌晨 3:00 执行。我读过 Service Class Documentation似乎我可以使用 AlarmManager 触发一个 Intent (我认为是 Activity 还是服务?),然后在该 Intent 中创建消息并将其发布到 Android 通知区域。

Calendar threeAM = Calendar.getInstance();
threeAM.set(Calendar.HOUR_OF_DAY,2);
threeAM.set(Calendar.MINUTE,0);
threeAM.set(Calendar.SECOND,0);
threeAM.set(Calendar.MILLISECOND,0);
AlarmManager alarmManager =
(AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(context, myNotifier.class);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, threeAM.getTimeInMillis(),
AlarmManager.INTERVAL_DAY, PendingIntent.getService(context, 1, i , 0));
Log.i("Service TEST", "Alarm set?" );

它运行代码没有问题,但没有迹象表明警报已设置, Activity 也没有启动。我正在使用我知道有效的 Activity 。我尝试将其包装在 try/catch 中,logcat 中没有任何内容......

最佳答案

我认为您应该注册您的 Activity 以接收启动广播接收器,以便您的应用程序在操作系统启动完成时启动。这是链接 http://www.androidenea.com/2009/09/starting-android-service-after-boot.html

它在通知方面没有帮助,但是可以解决您的 Activity 未启动的问题...

关于android - 使用报警管理器启动服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5053505/

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