重新安排广播接收器android

发布于 2025-01-03 00:23:46 字数 639 浏览 1 评论 0原文

我有一个AlarmManager,它设置一个重复警报。(实际上不是警报,而是发送邮件)。因此,在 BroadcastReceiver 中,我实际发送邮件。但要发送邮件需要互联网。因此,当手机没有互联网连接时,电子邮件不会发送。如何“暂停” BroadcastReceiver 中 onReceive() 内的操作?我是否制作一个以此触发的新接收器(当 phon haz internietz 时)或???

    private boolean isNetworkAvailable() {

        ConnectivityManager cm
          = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo ai= cm.getActiveNetworkInfo();
        return ai!= null;
    }

编辑: 让它工作。使用 IntentService 每 10 分钟检查一次互联网是否可用,以及是否:发送邮件。 IntentService 从我的 BroadcastReceiver 启动,如果没有互联网,最初将在其中发送电子邮件。

I have an AlarmManager which sets a repeating alarm. (Not actually an alarm, but send mail). So in the BroadcastReceiver I do the actual sending of the mail. But to send mail one needs Internet. So when the phone doesn't have an Internet connection the email doesn't get sent. How do I "snooze" the action which is inside onReceive() in my BroadcastReceiver? Do I make a new Receiver which fires with this (when phon haz internietz) or???

    private boolean isNetworkAvailable() {

        ConnectivityManager cm
          = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo ai= cm.getActiveNetworkInfo();
        return ai!= null;
    }

EDIT:
Got it to work. Used a IntentService which checks every 10 minutes if internet is avaliable, and if: send mail. The IntentService is started from my BroadcastReceiver, where the email initially is to be sent, if there's no internet.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

昨迟人 2025-01-10 00:23:46

只需使用检查互联网连接的后台服务即可。

如果互联网可用,它只会发送电子邮件,除非启动您的服务,该服务每分钟检查互联网连接,直到电子邮件发送,然后关闭您的服务。

Just Use Background Service Which Checks The Internet Connection.

if Internet available it just send the Email unless start your service which checks the internet connection in every minute until the email send and after that close your service.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文