我正在以编程方式在应用程序中创建WiFi AP。当新设备连接到我的AP时,我会收到广播吗?
我知道我们可以从/proc/net/arp 获取已连接设备的列表,但是当有新连接时我需要回调。
任何帮助表示赞赏。
最佳答案
如果您不需要使用AP连接互联网而只是在局域网中进行通信,您可以使用WifiP2pManager实例createGroup创建一个P2P组并使用广播接收器收听WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION。
像这样:
if (WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION.equals(action)){
NetworkInfo networkInfo = intent.getParcelableExtra(WifiP2pManager.EXTRA_NETWORK_INFO);
if (networkInfo.isConnected()) {
Manager.requestConnectionInfo(mChannel, new WifiP2pManager.ConnectionInfoListener(){
@Override
public void onConnectionInfoAvailable(final WifiP2pInfo info) {
if (info.isGroupOwner) {
mManager.requestGroupInfo(mChannel, new WifiP2pManager.GroupInfoListener() {
@Override
public void onGroupInfoAvailable(WifiP2pGroup group) {
//This is the size you want
group.getClientList().size();
}
});
}
}
});
}
}
更多细节请看:
http://developer.android.com/guide/topics/connectivity/wifip2p.html