0

我设置了一个重复的 AlarmManager,它将在特定时间发送 pendingIntent 以调用 BoardcastReceiver 以执行我的应用程序的更新内容。我的问题是如何等待网络连接建立,然后执行更新模块?

例如,AlarmManager 会在每周六下午 1 点触发 BoardcastReceiver 执行更新,但现在如果没有网络连接,它将错过更新。

我在我的 BoardcastReceiver 中尝试过这个:

public void onReceive(final Context context,Intent intent)
{
        Thread thread = new Thread()
        {
            @Override
            public void run()
            {
                try
                {
                    while(!isConnected(context))
                    {
                        Thread.sleep(1000);
                        Log.e("MyAPP","Sleep");
                    }
                    Updater updater = new Updater(context);
                    updater.execute();
                }catch(Exception e)
                {
                }
            }
        };
    thread.start();
}

isConnected() 运行良好,但是当我建立连接时,更新程序不执行。执行自动更新的任何常见或好主意?提前致谢。

4

1 回答 1

0

让您的 BroadcastReceiver 启动一个服务

于 2013-05-10T13:28:20.053 回答