等待网络连接

瑞奇:

我需要让我的应用等待直到完全建立wifi连接,然后才能继续运行。我现在有以下代码:

wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE); 
    if(!wifiManager.isWifiEnabled())
    {
        Toast.makeText(this, "Connecting to wifi network", Toast.LENGTH_SHORT).show();
        wifiManager.setWifiEnabled(true);
        //wait for connection to be establisihed and only then proceed


    }
吉列尔莫·美利奴(Guillermo Merino):

您可以使用注册了以下内容的广播接收器:

android.net.conn.CONNECTIVITY_CHANGE

监听状态变化并保留当前状态的变量

更多信息在这里


<receiver android:name="your.package.WifiReceiver" >
            <intent-filter>
                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
            </intent-filter>
 </receiver>

和接收方:

public class WifiReceiver extends BroadcastReceiver {

    public static boolean connected = false;

    @Override
    public void onReceive(Context context, Intent intent) {
        ConnectivityManager mgr = (ConnectivityManager) context
            .getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = mgr
            .getNetworkInfo(ConnectivityManager.TYPE_WIFI);

        connected = networkInfo != null && networkInfo.isConnected();
    }
}

public boolean isConnected(){
    return connected; 
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章