2011-05-02 31 views
1

与许多应用程序一样,我的应用程序依赖于WIFI和Http连接来操作。我不清楚的是我可以如何等待,直到WIFI启用AND设备连接到WIFI网络。推迟应用程序启动的最佳方式是什么?在此期间,我会保持按钮停用。还有什么方法可以让设备尝试连接到其首选网络?谢谢如何在应用程序启动之前等待直到WIFI连接?

+0

请参阅http://stackoverflow.com/questions/8678362/wait-until-wifi-connected-on-android它有什么你loooking。 – 2014-10-08 19:32:09

回答

0

看看ConnectivityManagerWiFiManager。使用这些可以在网络状态发生变化时获得事件

+0

你必须了解情况。主要活动正在启动。 OnCreate()调用它的时间来获取http数据?但是,在这种情况发生之前,你如何等待?也许你会让主要活动成为广播接收器?你在听什么广播? – Androider 2011-05-02 09:58:17

+0

请详细说明。如果你目前没有连接,你如何使用它们来启动网络连接。你怎么等待呢? – Androider 2011-05-02 10:49:02

+0

更具体地说: - 阅读MaxVT和我建议的文档; - 在SO和网络中寻找相关的问题。这里是一个:http://stackoverflow.com/questions/3262781/how-to-check-wifi-or-3g-network-is-available-on-android-device; 通常 - 在禁用按钮的情况下启动您的应用程序,然后根据需要收到所需的通知更新UI后,等待网络状态更改事件。 恐怕我没有代码片段来演示它 – Asahi 2011-05-02 11:20:12

0

使用WifiManager可以获取连接的状态。

一般来说,你将不得不尝试。 Wifi连接可以显示为已连接,但无法实际发送/接收,因为信号太弱。一旦连接完成,应用程序应尝试连接,并且只有在成功时,才能激活按钮等等。

+0

你会尝试连接什么电话?假设你想尝试连接到默认的无线网络,无论用户可能选择了什么? – Androider 2011-05-02 09:56:17

+0

这是否需要放入AsyncTask? – Androider 2011-05-02 09:56:35

+0

当WIFI实际连接时,是否会发布广播? – Androider 2011-05-02 09:58:41

相关问题