下面列出了android.net.wifi.p2p.WifiP2pDevice#INVITED 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
public static String getDeviceStatus(int deviceStatus) {
switch (deviceStatus) {
case WifiP2pDevice.AVAILABLE:
return "Available";
case WifiP2pDevice.INVITED:
return "Invited";
case WifiP2pDevice.CONNECTED:
return "Connected";
case WifiP2pDevice.FAILED:
return "Failed";
case WifiP2pDevice.UNAVAILABLE:
return "Unavailable";
default:
return "Unknown error";
}
}
/**
* 切断する
*/
protected void internalDisconnect(final WifiP2pManager.ActionListener listener) {
if (DEBUG) Log.v(TAG, "internalDisconnect:");
if (mWifiP2pManager != null) {
if ((mWifiP2pDevice == null)
|| (mWifiP2pDevice.status == WifiP2pDevice.CONNECTED)) {
// 接続されていないか、既に接続済みの時
if (mChannel != null) {
mWifiP2pManager.removeGroup(mChannel, listener);
}
} else if (mWifiP2pDevice.status == WifiP2pDevice.AVAILABLE
|| mWifiP2pDevice.status == WifiP2pDevice.INVITED) {
// ネゴシエーション中の時
mWifiP2pManager.cancelConnect(mChannel, listener);
}
}
}
@Override
public void cancelDisconnect() {
if(mManager != null){
final DeviceListFragment fragment = (DeviceListFragment)getFragmentManager().findFragmentById(R.id.frag_list);
if(fragment.getDevice() == null ||
fragment.getDevice().status == WifiP2pDevice.CONNECTED){
disconnect();
}else if(fragment.getDevice().status == WifiP2pDevice.AVAILABLE ||
fragment.getDevice().status == WifiP2pDevice.INVITED){
mManager.cancelConnect(mChannel, new WifiP2pManager.ActionListener() {
@Override
public void onSuccess() {
}
@Override
public void onFailure(int reason) {
}
});
}
}
}
private static String getDeviceStatus(int deviceStatus){
Log.e(WiFiDirectActivity.TAG, "Peer status: "+deviceStatus);
switch(deviceStatus){
case WifiP2pDevice.AVAILABLE:
return "Avaiable";
case WifiP2pDevice.INVITED:
return "Invited";
case WifiP2pDevice.CONNECTED:
return "Conntend";
case WifiP2pDevice.FAILED:
return "Failed";
case WifiP2pDevice.UNAVAILABLE:
return "Unavailable";
default:
return "Unkonw";
}
}
/**
* Translates a device status code to a readable String status
* @param status
* @return A readable String device status
*/
public String deviceStatusToString(int status) {
if (status == WifiP2pDevice.AVAILABLE) {
return "Available";
} else if (status == WifiP2pDevice.INVITED) {
return "Invited";
} else if (status == WifiP2pDevice.CONNECTED) {
return "Connected";
} else if (status == WifiP2pDevice.FAILED) {
return "Failed";
} else if (status == WifiP2pDevice.UNAVAILABLE) {
return "Unavailable";
} else {
return "Unknown";
}
}
private CharSequence getWifiP2pDeviceStatus(WifiP2pDevice dev) {
switch (dev.status) {
case WifiP2pDevice.CONNECTED:
return getString(R.string.status_p2p_connected);
case WifiP2pDevice.INVITED:
return getString(R.string.status_p2p_invited);
case WifiP2pDevice.FAILED:
return getString(R.string.status_p2p_failed);
case WifiP2pDevice.AVAILABLE:
return getString(R.string.status_p2p_available);
case WifiP2pDevice.UNAVAILABLE:
default:
return getString(R.string.status_p2p_unavailable);
}
}
private static String getDeviceStatus(int deviceStatus) {
Log.d(TAG, "Peer status :" + deviceStatus);
switch (deviceStatus) {
case WifiP2pDevice.AVAILABLE:
return "Available";
case WifiP2pDevice.INVITED:
return "Invited";
case WifiP2pDevice.CONNECTED:
return "Connected";
case WifiP2pDevice.FAILED:
return "Failed";
case WifiP2pDevice.UNAVAILABLE:
return "Unavailable";
default:
return "Unknown";
}
}
public void disconnectWifiDirect() {
if (mWifiP2pDevice != null) {
ALog.i(TAG, "disconnectWifiDirect mWifiP2pDevice.status:" + mWifiP2pDevice.status);
if (mWifiP2pDevice.status == WifiP2pDevice.CONNECTED) {
disconnect();
} else if (mWifiP2pDevice.status == WifiP2pDevice.AVAILABLE
|| mWifiP2pDevice.status == WifiP2pDevice.INVITED) {
cancelConnect();
}
}
}
void handlePeerListClick(int index) {
WifiP2pDevice dev = peerdevs.get(index);
if (dev.status == WifiP2pDevice.CONNECTED
|| dev.status == WifiP2pDevice.INVITED) {
disconnectPeer(dev);
} else if (dev.status != WifiP2pDevice.UNAVAILABLE) {
connectPeer(dev);
}
}
/**
* WiFi Directで接続を試みているか接続しているかどうか
* @return
*/
public synchronized boolean isConnectedOrConnecting() {
return (mWifiP2pDevice != null)
&& ((mWifiP2pDevice.status == WifiP2pDevice.CONNECTED)
|| (mWifiP2pDevice.status == WifiP2pDevice.INVITED));
}