private void WepOkClicked(object sender, DialogClickEventArgs e) { var dialog = (AlertDialog)sender; var password = (EditText)dialog.FindViewById(Resource.Id.password); var conf = new WifiConfiguration(); conf.Ssid = "\"" + mSelectedSsid + "\""; conf.WepKeys[0] = "\"" + password + "\""; conf.WepTxKeyIndex = 0; conf.AllowedKeyManagement.Set((int)KeyManagementType.None); conf.AllowedPairwiseCiphers.Set((int)GroupCipherType.Wep40); var wifiManager = GetSystemService(WifiService).JavaCast <WifiManager>(); wifiManager.AddNetwork(conf); WifiP2pDevice wifi = new WifiP2pDevice(); foreach (var network in wifiManager.ConfiguredNetworks.Where(n => n.Ssid.Contains(mSelectedSsid))) { wifiManager.Disconnect(); wifiManager.EnableNetwork(network.NetworkId, true); wifiManager.Reconnect(); } }
/// <summary> /// <see cref="IWifiP2pCallbacksHandler.OnThisDeviceChanged(WifiP2pDevice)"/> /// </summary> override public void OnThisDeviceChanged(WifiP2pDevice deviceDetails) { // Update the device's details m_Views.DeviceNameTextView.Text = deviceDetails.DeviceName; m_Views.DeviceAddressTextView.Text = deviceDetails.DeviceAddress; m_Views.DeviceStatusTextView.Text = deviceDetails.Status.ToString(); }
/// <summary> /// Update UI for this device. /// </summary> /// <param name="device">WifiP2pDevice object</param> public void UpdateThisDevice(WifiP2pDevice device) { Device = device; var view = _contentView.FindViewById <TextView>(Resource.Id.my_name); view.Text = device.DeviceName; view = _contentView.FindViewById <TextView>(Resource.Id.my_status); view.Text = GetDeviceStatus(device.Status); }
/// <summary> /// Updates the UI with device data /// </summary> /// <param name="device">the device to be displayed</param> public void ShowDetails(WifiP2pDevice device) { _device = device; View.Visibility = ViewStates.Visible; var view = _contentView.FindViewById <TextView>(Resource.Id.device_address); view.Text = _device.DeviceAddress; view = _contentView.FindViewById <TextView>(Resource.Id.device_info); view.Text = _device.ToString(); }
/// <summary> /// <see cref="RecyclerView.Adapter.OnBindViewHolder(RecyclerView.ViewHolder, int)"/> /// </summary> override public void OnBindViewHolder(RecyclerView.ViewHolder holder, int position) { WifiPeerViewHolder wifiPeerHolder = holder as WifiPeerViewHolder; WifiP2pDevice currentItem = m_WifiP2pDevices.ElementAt(position); wifiPeerHolder.DeviceImage.SetImageResource(position % 2 == 0 ? Resource.Drawable.ic_tablet_android : Resource.Drawable.ic_phone_android); wifiPeerHolder.DeviceName.Text = currentItem.DeviceName; wifiPeerHolder.InformationLayout.SetOnClickListener(new BaseOnClickListener(v => { m_OnItemClick?.Invoke(currentItem); })); wifiPeerHolder.SendButton.Visibility = m_ShowButton ? ViewStates.Visible : ViewStates.Gone; }
public void ShowDetails(WifiP2pDevice device) { var fragment = FragmentManager.FindFragmentById <DeviceDetailFragment>(Resource.Id.frag_detail); fragment.ShowDetails(device); }
/// <summary> /// <see cref="IWifiP2pCallbacksHandler.OnThisDeviceChanged(WifiP2pDevice)"/> /// </summary> abstract public void OnThisDeviceChanged(WifiP2pDevice deviceDetails);
/// <summary> /// <see cref="IWifiP2pCallbacksHandler.OnThisDeviceChanged(WifiP2pDevice)"/> /// </summary> virtual public void OnThisDeviceChanged(WifiP2pDevice deviceDetails) { }
/// <summary> /// <see cref="BroadcastReceiver.OnReceive(Context, Intent)"/> /// </summary> override public void OnReceive(Context context, Intent intent) { // Filter Messages intents if (intent is WifiP2pMessageIntent messageIntent) { // Load extra data from the intent. messageIntent.Load(); switch (messageIntent.Action) { case WifiP2pMessageIntent.ActionMessageReceivedProgress: if (messageIntent.IsCompleted) { m_CallbackHandler.OnMessageReceived(messageIntent.Message); } else { m_CallbackHandler.OnMessageReceivedProgressChanged(messageIntent.Message.MessageType, messageIntent.Progress); } break; case WifiP2pMessageIntent.ActionMessageSentProgress: if (messageIntent.IsCompleted) { m_CallbackHandler.OnMessageSent(messageIntent.Message); } else { m_CallbackHandler.OnMessageSendingProgressChanged(messageIntent.Message, messageIntent.Progress); } break; } } else { switch (intent.Action) { case WifiP2pConnectionChangedAction: NetworkInfo networkInfo = (NetworkInfo)intent.GetParcelableExtra(ExtraNetworkInfo); WifiP2pInfo p2pInfo = (WifiP2pInfo)intent.GetParcelableExtra(ExtraWifiP2pInfo); WifiP2pGroup groupInfo = (WifiP2pGroup)intent.GetParcelableExtra(ExtraWifiP2pGroup); m_CallbackHandler.OnWifiP2pConnectionChanged(networkInfo, p2pInfo, groupInfo); break; case WifiP2pPeersChangedAction: WifiP2pDeviceList peers = (WifiP2pDeviceList)intent.GetParcelableExtra(ExtraP2pDeviceList); m_CallbackHandler.OnPeersAvailable(peers); break; case WifiP2pStateChangedAction: EWifiState wifiState = (EWifiState)intent.GetIntExtra(ExtraWifiState, 0); m_CallbackHandler.OnWifiP2pStateChanged(wifiState); break; case WifiP2pThisDeviceChangedAction: WifiP2pDevice deviceDetails = (WifiP2pDevice)intent.GetParcelableExtra(ExtraWifiP2pDevice); m_CallbackHandler.OnThisDeviceChanged(deviceDetails); break; default: throw new NotSupportedException($"The action {intent.Action} is not handled by this receiver."); } } }
public WifiDirectDevice(WifiP2pDevice droidDevice) { DroidDevice = droidDevice; }