這是一個簡單的問題,我必須使用「Wifi直接」獲取「羣組所有者地址」,我知道這是在WifiP2pInfo.GroupOwnerAddress中,但我如何初始化WifiP2pInfo.groupOnwerAddress以獲取我的應用程序中的集團所有者地址?Wifi Direct Group所有者地址
有人可以給我一個通行證嗎? 我是Android和Java新手。
很多謝謝。
這是一個簡單的問題,我必須使用「Wifi直接」獲取「羣組所有者地址」,我知道這是在WifiP2pInfo.GroupOwnerAddress中,但我如何初始化WifiP2pInfo.groupOnwerAddress以獲取我的應用程序中的集團所有者地址?Wifi Direct Group所有者地址
有人可以給我一個通行證嗎? 我是Android和Java新手。
很多謝謝。
NetworkInfo networkInfo = (NetworkInfo)intent.getParcelableExtra(extraKey);
if (networkInfo.isConnected()) {
wifiP2pManager.requestConnectionInfo(wifiDirectChannel,
new ConnectionInfoListener() {
public void onConnectionInfoAvailable(WifiP2pInfo info) {
Toast toast=Toast.makeText(class.this,info.groupOwnerAddress.getHostAddress().toString, Toast.LENGHT_SHORT);
toast.show();
}
}
}
對不起,對於遲到的答案。 這是擁有者IP info.groupOwnerAddress.getHostAddress().toString
wifi直接組中的所有者IP地址始終是恆定的,即192.168.49.1。要檢查這一點,你可以在你的BroadcastReceiver類中進行如下更改。
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION.equals(action)) {
if (mManager == null) {
return;
}
NetworkInfo networkInfo = (NetworkInfo) intent
.getParcelableExtra(WifiP2pManager.EXTRA_NETWORK_INFO);
if (networkInfo.isConnected()) {
mManager.requestConnectionInfo(mChannel, new ConnectionInfoListener() {
@Override
public void onConnectionInfoAvailable(WifiP2pInfo info) {
InetAddress groupOwnerAddress = info.groupOwnerAddress;
String s=groupOwnerAddress.getHostAddress();
Toast.makeText(mActivity, "Server IP Address "+s, Toast.LENGTH_SHORT).show();
}
});
}
}
}