pro*_*pis 16 java android wifi
我有一个试图连接到wifi网络的小程序.它启用设备上的wifi,然后如果它是第一次连接到某个网络它加载设备wifi以选择和添加连接密码.直到我添加密码才能连接程序不应该完成.我怎样才能添加一些东西等待,直到我从连接的wifi管理器获取?我尝试睡眠,但它冻结了应用程序,我没有得到wifi弹出菜单连接?还有其他方法吗?
R4j*_*R4j 24
我在一个月前找到了你的问题的解决方案,只需在其中使用Thread put方法isConnected().
在这种情况下,我使用WifiExplorerActivity来显示所有wifi网络并允许用户连接到它.
Thread t = new Thread() {
@Override
public void run() {
try {
//check if connected!
while (!isConnected(WifiExplorerActivity.this)) {
//Wait to connect
Thread.sleep(1000);
}
Intent i = new Intent(WifiExplorerActivity.this, MainActivity.class);
startActivity(i);
} catch (Exception e) {
}
}
};
t.start();
Run Code Online (Sandbox Code Playgroud)
这是检查wifi是否已连接的功能:
public static boolean isConnected(Context context) {
ConnectivityManager connectivityManager = (ConnectivityManager)
context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = null;
if (connectivityManager != null) {
networkInfo = connectivityManager.getActiveNetworkInfo();
}
return networkInfo != null && networkInfo.getState() == NetworkInfo.State.CONNECTED;
}
Run Code Online (Sandbox Code Playgroud)
最后,确保您的Androidmanifest.xml看起来像这样:
<activity android:name=".WifiExplorerActivity" >
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)
此外,您可以使用ProgressDialog等待连接.请参阅http://developer.android.com/guide/topics/ui/dialogs.html
归档时间: |
|
查看次数: |
16940 次 |
最近记录: |