我使用以下代码创建WifiP2p组
manager.requestGroupInfo(channel, new WifiP2pManager.GroupInfoListener() {
public void onGroupInfoAvailable(WifiP2pGroup group){
if (group != null) {
manager.removeGroup(channel, new WifiP2pManager.ActionListener() {
@Override
public void onSuccess() {
manager.createGroup(channel, new WifiP2pManager.ActionListener() {
@Override
public void onSuccess() {
}
@Override
public void onFailure(int reason) {
Debug.d("" + reason);
}
});
}
@Override
public void onFailure(int reason) {
Debug.d("" + reason);
}
});
} else {
manager.createGroup(channel, new WifiP2pManager.ActionListener(){
@Override
public void onSuccess() {
}
@Override
public void onFailure(int reason) {
Debug.d("" + reason);
}
});
}
}
});
它始终失败,原因码为BUSY。我在调试模式下运行它,发现返回的WifiP2pGroup对象始终为null。然而,由于忙碌的原因它失败了。我在Application类中创建并保留WifiP2pManager和Channel对象,并在整个应用程序中将它们用作单例。这可能是问题吗?我无法在网上找到答案。
答案 0 :(得分:0)
我终于得到了问题的根源。 我的WIFI已关闭。我使用WifiManager打开WIFI,现在正按预期创建组。