类android.net.wifi.p2p.WifiP2pManager.ActionListener源码实例Demo

下面列出了怎么用android.net.wifi.p2p.WifiP2pManager.ActionListener的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: android_9.0.0_r45   文件: WifiDisplayController.java
private void stopPeerDiscovery() {
    mWifiP2pManager.stopPeerDiscovery(mWifiP2pChannel, new ActionListener() {
        @Override
        public void onSuccess() {
            if (DEBUG) {
                Slog.d(TAG, "Stop peer discovery succeeded.");
            }
        }

        @Override
        public void onFailure(int reason) {
            if (DEBUG) {
                Slog.d(TAG, "Stop peer discovery failed with reason " + reason + ".");
            }
        }
    });
}
 
源代码2 项目: ShareBox   文件: WifiDirectGroupManager.java
public void createGroup(){
		mWifiP2pManager.createGroup(mChannel, new ActionListener() {
			@Override
			public void onSuccess() {
				ALog.i(TAG, "create group success");
//				mHandler.obtainMessage(Event.CREATE_GROUP_SUCCESS).sendToTarget();
				mHandler.obtainMessage(Event.START_GROUP_SUCCESS).sendToTarget();
				mWifiP2pManager.requestGroupInfo(mChannel, WifiDirectGroupManager.this);
			}
			@Override
			public void onFailure(int reason) {
				ALog.i(TAG, "create group failure "+errorCode2String(reason));
//				mHandler.obtainMessage(Event.CREATE_GROUP_FAILURE,reason).sendToTarget();
				mHandler.obtainMessage(Event.START_GROUP_FAILURE).sendToTarget();
				//try to get data,when is start
				mWifiP2pManager.requestGroupInfo(mChannel, WifiDirectGroupManager.this);
			}
		});
	}
 
源代码3 项目: ShareBox   文件: WifiDirectGroupManager.java
public void removeGroup(){
		mWifiP2pManager.removeGroup(mChannel, new ActionListener() {
			@Override
			public void onSuccess() {
				ALog.i(TAG, "remove group success");
//				mHandler.obtainMessage(Event.REMOVE_GROUOP_SUCCESS).sendToTarget();
				mHandler.obtainMessage(Event.STOP_GROUP_SUCCESS).sendToTarget();
			}
			@Override
			public void onFailure(int reason) {
				ALog.i(TAG, "remove group failure "+errorCode2String(reason));
//				mHandler.obtainMessage(Event.REMOVE_GROUPO_FAILURE,reason).sendToTarget();
				mHandler.obtainMessage(Event.STOP_GROUP_FAILURE).sendToTarget();
			}
		});
	}
 
源代码4 项目: ShareBox   文件: WifiDirectManager.java
public void connect(WifiP2pConfig config) {
		ALog.i(TAG, "connect mWifiP2pManager:" + mWifiP2pManager + ", config:" + config);
		if (mWifiP2pManager != null) {
			mWifiP2pManager.connect(mWifiChannel, config, new ActionListener() {

				@Override
				public void onSuccess() {
					ALog.v(TAG, "connect onSuccess!");
					Message msg = mManagerHandler.obtainMessage(Utilities.MSG_WIFI_CONNECT_SUCCESS);
					mManagerHandler.sendMessage(msg);
				}
				
				@Override
				public void onFailure(int reason) {
					ALog.v(TAG, "connect failed reason:" + reason);
//					Message msg = mManagerHandler.obtainMessage(Utilities.MSG_WIFI_CONNECT_FAILED);
//					if(mManagerHandler.hasMessages(Utilities.MSG_WIFI_CONNECT_FAILED))
//						return;
//					mManagerHandler.sendMessageDelayed(msg, 500);
				}
			});
		}
	}
 
源代码5 项目: ShareBox   文件: WifiDirectManager.java
public void cancelConnect() {
	ALog.i(TAG, "cancelDisconnect mWifiP2pManager:" + mWifiP2pManager + ", mWifiChannel:" + mWifiChannel);
	if (mWifiP2pManager != null) {
		mWifiP2pManager.cancelConnect(mWifiChannel, new ActionListener() {

			@Override
			public void onSuccess() {
				ALog.v(TAG, "cancelDisconnect onSuccess!");
			}

			@Override
			public void onFailure(int reason) {
				ALog.v(TAG, "cancelDisconnect failed reason:" + reason);
			}
		});
	}
}
 
源代码6 项目: ShareBox   文件: WifiDirectService.java
protected void stopPeer(){
		mWifiDirectManager.stopDiscover(new ActionListener() {
			@Override
			public void onSuccess() {
				ALog.i(TAG, "WifiDirectService 停止探索");
				mIsWifiP2pSearching=false;
				sendBroadcast(new Intent(WifiDirectManager.WIFI_DIRECT_END_SEARCHING_ACTION));		
			}
			@Override
			public void onFailure(int reason) {
				Message msg=mServiceHandler.obtainMessage(MSG_DISCOVER_STOP);
//				mServiceHandler.sendMessageDelayed(msg, 2000);
			}
		});
		
	}
 
@Override
public void connect(WifiP2pConfig config) {
    Logger.log(TAG, "connecting to wi-fi peer");

    mManager.connect(mChannel, config, new ActionListener() {

        @Override
        public void onSuccess() {
            myStatusText.setText(localize("wifi.direct.connect.success"));
        }

        @Override
        public void onFailure(int reason) {
            Logger.log(TAG, "Connection to peer failed");
            Toast.makeText(CommCareWiFiDirectActivity.this,
                    localize("wifi.direct.connect.failed"),
                    Toast.LENGTH_SHORT).show();
        }
    });
}
 
源代码8 项目: android_9.0.0_r45   文件: WifiDisplayController.java
private void tryDiscoverPeers() {
    mWifiP2pManager.discoverPeers(mWifiP2pChannel, new ActionListener() {
        @Override
        public void onSuccess() {
            if (DEBUG) {
                Slog.d(TAG, "Discover peers succeeded.  Requesting peers now.");
            }

            if (mDiscoverPeersInProgress) {
                requestPeers();
            }
        }

        @Override
        public void onFailure(int reason) {
            if (DEBUG) {
                Slog.d(TAG, "Discover peers failed with reason " + reason + ".");
            }

            // Ignore the error.
            // We will retry automatically in a little bit.
        }
    });

    // Retry discover peers periodically until stopped.
    mHandler.postDelayed(mDiscoverPeers, DISCOVER_PEERS_INTERVAL_MILLIS);
}
 
源代码9 项目: letv   文件: HeartbeatService.java
void discoverP2pDevice() {
    LeBoxNetworkManager.getInstance().discoverP2pPeers(new ActionListener() {
        public void onSuccess() {
            Logger.d(HeartbeatService.TAG, "---discoverP2pDevice--discoverPeers--onSuccess");
        }

        public void onFailure(int reason) {
            Logger.d(HeartbeatService.TAG, "---discoverP2pDevice--discoverPeers--onFailure reason=" + reason);
        }
    });
}
 
源代码10 项目: ShareBox   文件: WifiDirectManager.java
@Override
public void handleMessage(Message msg) {
  		ALog.i(TAG, "mManagerHandler msg.what:" + msg.what);
  		switch (msg.what) {
  		case Utilities.MSG_WIFI_DISCOVER_PEER_FAILED:
  			ALog.i(TAG, "Wifi discover peer failed.now retry");
  			discover((ActionListener)msg.obj);
  			break;
  		case Utilities.MSG_WIFI_DISCOVER_STOP_FAILED:
  			ALog.i(TAG, "Wifi discover stop failed.now retry");
  			stopDiscover((ActionListener)msg.obj);
  			break;
  		case Utilities.MSG_WIFI_DISCOVER_PEER_SUCCESS:
  			ALog.i(TAG, "Wifi discover peer success.");
  			sendWifiDirectBroadcast(WIFI_DIRECT_DISCOVERED_PEER_ACTION);
  			break;
  		case Utilities.MSG_WIFI_CONNECT_FAILED:
  			ALog.i(TAG, "Wifi connect failed.");
  			break;
  		case Utilities.MSG_WIFI_CONNECT_SUCCESS:
  			ALog.i(TAG, "Wifi connect success.");
  			sendWifiDirectBroadcast(WIFI_DIRECT_CONNECT_FAILED);
  			break;
  		case Utilities.MSG_WIFI_CONNECTED:
  			mIsWifiP2pConnected = true;
  			ALog.i(TAG, "Wifi now p2pConnected.");
  			sendWifiDirectBroadcast(WIFI_DIRECT_CONNECTED_ACTION);
  			break;
  		}
  	}
 
源代码11 项目: ShareBox   文件: WifiDirectManager.java
public void disconnect() {
	ALog.i(TAG, "disconnect mWifiP2pManager:" + mWifiP2pManager + ", mWifiChannel:" + mWifiChannel);
	if (mWifiP2pManager != null) {
		mWifiP2pManager.removeGroup(mWifiChannel, new ActionListener() {
			@Override
			public void onSuccess() {
				ALog.v(TAG, "disconnect onSuccess!");
			}
			@Override
			public void onFailure(int reason) {
				ALog.v(TAG, "disconnect failed reason:" + reason);
			}
		});
	}
}
 
源代码12 项目: ShareBox   文件: WifiDirectManager.java
public void setDeviceName(String name){
//		setDeviceName(Channel c, String devName, ActionListener listener)
		Class<WifiP2pManager> clzz = WifiP2pManager.class;
		
		ActionListener listener=new ActionListener() {
			@Override
			public void onSuccess() {
				ALog.i(TAG, "setDeviceName succees");
			}
			@Override
			public void onFailure(int reason) {
				ALog.i(TAG, "setDeviceName failure");
			}
		};
		
		Method m=null;
		try {
			m=clzz.getDeclaredMethod("setDeviceName", 
					new Class[]{Channel.class,String.class,ActionListener.class});
			m.setAccessible(true);
			m.invoke(mWifiP2pManager, getChannel(),name,listener);	
		} catch (Exception e) {
			e.printStackTrace();
		} finally{
			if(m!=null)
				m.setAccessible(false);
		}
	}
 
源代码13 项目: ShareBox   文件: WifiDirectService.java
public void startDiscoverAfterStopDiscover(){
	mServiceHandler.removeMessages(MSG_DISCOVER_STOP);
	mWifiDirectManager.stopDiscover(new ActionListener() {
		@Override
		public void onSuccess() {
			startDiscover();
		}

		@Override
		public void onFailure(int reason) {
			startDiscover();
		}
	});
}
 
源代码14 项目: gilgamesh   文件: WifiController.java
public void init (GilgaService service)
{
 mService = service;

     mWifiManager = (WifiP2pManager) mService.getSystemService(Context.WIFI_P2P_SERVICE);
     
     mWifiChannel = mWifiManager.initialize(mService, mService.getMainLooper(), new ChannelListener()
     {

@Override
public void onChannelDisconnected() {
	Log.d(GilgaService.TAG,"wifi p2p disconnected");
}
     	
     });
     
     WifiP2pDnsSdServiceRequest serviceRequest = WifiP2pDnsSdServiceRequest.newInstance();
     mWifiManager.addServiceRequest(mWifiChannel,
             serviceRequest,
             new ActionListener() {
                 @Override
                 public void onSuccess() {
                     // Success!
 	            	Log.d(TAG,"SUCCESS: added service request wifi name service");

                 }

                 @Override
                 public void onFailure(int code) {
                     // Command failed.  Check for P2P_UNSUPPORTED, ERROR, or BUSY
                 	Log.d(TAG,"FAILURED: added service request wifi name service: " + code);
                 }
             });
     
}
 
源代码15 项目: gilgamesh   文件: WifiController.java
public void startWifiDiscovery ()
{
	
	if (mWifiEnabled)
	{
	 mWifiManager.discoverPeers(mWifiChannel, new WifiP2pManager.ActionListener() {

         @Override
         public void onSuccess() {
             // Code for when the discovery initiation is successful goes here.
             // No services have actually been discovered yet, so this method
             // can often be left blank.  Code for peer discovery goes in the
             // onReceive method, detailed below.
         	Log.d(TAG,"success on wifi discover");
         	
         }

         @Override
         public void onFailure(int reasonCode) {
             // Code for when the discovery initiation fails goes here.
             // Alert the user that something went wrong.
         	Log.d(TAG,"FAIL on wifi discovery: " + reasonCode);
         }

	    });
	 
	 discoverWifiService();
	}
}
 
源代码16 项目: letv   文件: LeBoxNetworkManager.java
public void connectP2p(WifiP2pDevice device, ActionListener listener) {
    LeBoxWifiDirectModel.getInstance().connect(device, listener);
}
 
源代码17 项目: letv   文件: LeBoxNetworkManager.java
public void discoverP2pPeers(ActionListener listener) {
    LeBoxWifiDirectModel.getInstance().discoverPeers(listener);
}
 
public void discoverPeers() {
    Logger.log(TAG, "Discovering Wi-fi direct peers");

    WiFiDirectManagementFragment fragment = (WiFiDirectManagementFragment)getSupportFragmentManager()
            .findFragmentById(R.id.wifi_manager_fragment);

    if (!fragment.isWifiP2pEnabled()) {
        Toast.makeText(CommCareWiFiDirectActivity.this, localize("wifi.direct.wifi.direct.off"),
                Toast.LENGTH_SHORT).show();
        return;
    }

    final DeviceListFragment dlFragment = (DeviceListFragment)getSupportFragmentManager()
            .findFragmentById(R.id.frag_list);
    dlFragment.onInitiateDiscovery();

    mManager.discoverPeers(mChannel, new WifiP2pManager.ActionListener() {

        @Override
        public void onSuccess() {
            Toast.makeText(CommCareWiFiDirectActivity.this,
                    localize("wifi.direct.discovery.start"),
                    Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onFailure(int reasonCode) {

            Logger.log(TAG, "Discovery of Wi-fi peers failed");

            if (reasonCode == 0 || reasonCode == 2) {
                Toast.makeText(CommCareWiFiDirectActivity.this,
                        localize("wifi.direct.discovery.failed.generic"),
                        Toast.LENGTH_SHORT).show();
            } else {
                Toast.makeText(CommCareWiFiDirectActivity.this,
                        localize("wifi.direct.discovery.failed.specific", "" + reasonCode),
                        Toast.LENGTH_SHORT).show();
            }

        }
    });
}
 
源代码19 项目: gilgamesh   文件: WifiController.java
private void discoverWifiService() {
    DnsSdTxtRecordListener txtListener = new DnsSdTxtRecordListener() {
        @Override
        /* Callback includes:
         * fullDomain: full domain name: e.g "printer._ipp._tcp.local."
         * record: TXT record dta as a map of key/value pairs.
         * device: The device running the advertised service.
         */

        public void onDnsSdTxtRecordAvailable(String fullDomain, Map record, WifiP2pDevice device) {
                
                String status = (String)record.get("status");
                
                Log.d(TAG,"got status from wifi DNS: " + device.deviceAddress + " (" + fullDomain + ") " + status);
                mService.processInboundMessage(device.deviceAddress,status,false);
            }
        
        };
    
        DnsSdServiceResponseListener servListener = new DnsSdServiceResponseListener() {
            @Override
            public void onDnsSdServiceAvailable(String instanceName, String registrationType,
                    WifiP2pDevice resourceType) {
            	Log.d(TAG,"SD service available!");
            }
        };
        
        mWifiManager.setDnsSdResponseListeners(mWifiChannel, servListener, txtListener);
        
        mWifiManager.discoverServices(mWifiChannel, new ActionListener() {

            @Override
            public void onSuccess() {
                // Success!
            	Log.d(TAG, "discover services!");
            }

            @Override
            public void onFailure(int code) {
                // Command failed.  Check for P2P_UNSUPPORTED, ERROR, or BUSY
                if (code == WifiP2pManager.P2P_UNSUPPORTED) {
                    Log.d(TAG, "P2P isn't supported on this device.");
                    mWifiEnabled = false;
                }
            }
        });

}
 
 类所在包
 同包方法