2013-05-10 31 views
0

我设置了一个重复的AlarmManager,它将在一定的时间发送pendingIntent来调用BoardcastReceiver来执行我应用程序的更新内容。我的问题是如何等待网络连接建立,然后执行更新模块?Android 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()工作得很好,但是当我建立连接,更新犯规执行。执行自动更新的任何常见或好主意?提前致谢。

回答

0

让您的BroadcastReceiver启动服务