Quantcast
Channel: Recent Threads — Xamarin Community Forums
Viewing all articles
Browse latest Browse all 204402

wifi on iOS

$
0
0

I'm trying to connect to wifi in iOS. I have the Android wifi working great.

The code I'm running in Main.cs is below. Any pointers are appreciated.

using System;
using System.Runtime.CompilerServices;
using System.Threading.Tasks;
using NetworkExtension;
using TLXStatus.Droid;
using TLXStatus.iOS;
using UIKit;

[assembly: DefaultDependency(typeof(IWifiConnector))]

namespace TLXStatus.iOS { } 

public class Application
{

    static async Task Main(string[] args)
    {
        // if you want to use a different Application Delegate class from "AppDelegate"
        // you can specify it here.
        UIApplication.Main(args, null, "AppDelegate");

        bool x = await ConnectWpa("TLX_F8F005F4DF6B", "");

        var config = new NEHotspotConfiguration("TLX_F8F005F4DF6B", "", false);
        config.JoinOnce = false;
    }

Task<bool> ConnectWpa(string ssid, string password)
{
    try
    {
        var wifiConfig = new NEHotspotConfiguration(ssid, password, false) { JoinOnce = true };
        var wifiManager = new NEHotspotConfigurationManager();

        wifiManager.ApplyConfiguration(wifiConfig, (error) =>
        {
            if (error != null)
            {
                Console.WriteLine($"Error while connecting to WiFi network {ssid}: {error}");
            }
        });

        Console.WriteLine("Connected!");
        return Task.FromResult(true);
    }
    catch (Foundation.NSErrorException error)
    {
        Console.WriteLine(error.ToString());
        return Task.FromResult(false);
    }
    catch (Exception e)
    {
        Console.WriteLine(e.ToString());
        return Task.FromResult(false);
    }
}

IWifiConnector wifiConnector;

public interface IWifiConnector
{
    void ConnecttoWifi(string ssid, string password);
}

Viewing all articles
Browse latest Browse all 204402

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>