public void initializeMCServices() { myPeerId = new MCPeerID(UIDevice.CurrentDevice.Name); MyAdvertiserDelegate myAdvertiserDelegate = new MyAdvertiserDelegate(this); MyBrowserDelegate myBrowserDelegate = new MyBrowserDelegate(this); MySessionDelegate mySessionDelegate = new MySessionDelegate(this); var emptyDict = new NSDictionary(); MCNearbyServiceAdvertiser serviceAdvertiser = new MCNearbyServiceAdvertiser(myPeerId, emptyDict, serviceTypeString); serviceAdvertiser.Delegate = myAdvertiserDelegate; serviceAdvertiser.StartAdvertisingPeer(); MCNearbyServiceBrowser serviceBrowser = new MCNearbyServiceBrowser(myPeerId, serviceTypeString); serviceBrowser.Delegate = myBrowserDelegate; serviceBrowser.StartBrowsingForPeers(); session = new MCSession(myPeerId); session.Delegate = mySessionDelegate; sendPeerToPeerData(myPeerId.DisplayName); }
/// <summary> /// Initializes a new instance of the /// <see cref="U3DXT.iOS.Multipeer.SessionStartedReceivingResourceWithNameEventArgs"/> class. /// </summary> /// <param name="_session">_session.</param> /// <param name="_resourceName">_resource name.</param> /// <param name="_peerID">_peer I.</param> /// <param name="_progress">_progress.</param> public SessionDidReceiveCertificateEventArgs(MCSession _session, object[] _certificate, MCPeerID _peerID, bool _acceptCertificate = true) { acceptCertificate = _acceptCertificate; session = _session; certificate = _certificate; peerID = _peerID; }
/// <summary> /// Initializes a new instance of the /// <see cref="U3DXT.iOS.Multipeer.SessionStartedReceivingResourceWithNameEventArgs"/> class. /// </summary> /// <param name="_session">_session.</param> /// <param name="_resourceName">_resource name.</param> /// <param name="_peerID">_peer I.</param> /// <param name="_progress">_progress.</param> public SessionStartedReceivingResourceWithNameEventArgs(MCSession _session, string _resourceName, MCPeerID _peerID, U3DXT.iOS.Native.Foundation.NSProgress _progress) { session = _session; resourceName = _resourceName; peerID = _peerID; progress = _progress; }
public static void ProcessCommand(MCSession session, Foundation.NSData data, MCPeerID peerID) { Console.WriteLine("Received command to process " + data.ToString()); // disconnect session if needed. // forward to internet if available }
public void FoundPeer(MCNearbyServiceBrowser browser, MCPeerID peerID, NSDictionary info) { if (peerID != this.myself.PeerId) { var appIdentifier = info?[XamarinShotGameAttribute.AppIdentifier]; if (appIdentifier?.ToString() == NSBundle.MainBundle.BundleIdentifier) { DispatchQueue.MainQueue.DispatchAsync(() => { var player = new Player(peerID); var gameName = info?[XamarinShotGameAttribute.Name] as NSString; GameTableLocation location = null; var locationIdString = info?[XamarinShotGameAttribute.Location] as NSString; if (!string.IsNullOrEmpty(locationIdString) && int.TryParse(locationIdString, out int locationId)) { location = GameTableLocation.GetLocation(locationId); } var game = new NetworkGame(player, gameName, location?.Identifier ?? 0); this.games.Add(game); this.Delegate?.SawGames(this, new List <NetworkGame>(this.games)); }); } } }
public Task StartScanning() { var isWifiEnabled = NetworkInterfaces.IsWifiEnabled(); if (!isWifiEnabled) { throw new WiFiTurnedOffException(); } var myPeerId = new MCPeerID(UIDevice.CurrentDevice.Name); _session = new MCSession(myPeerId) { Delegate = new SessionDelegate(this) }; MainThread.BeginInvokeOnMainThread(() => { var browser = new MCNearbyServiceBrowser(myPeerId, BluetoothOperator.CROSSCAM_SERVICE) { Delegate = new NewBrowserDelegate(this) }; browser.StartBrowsingForPeers(); }); Debug.WriteLine("### SCANNING START"); return(Task.FromResult(true)); }
public void Ctor_Identity_Certificates() { TestRuntime.AssertSystemVersion(ApplePlatform.iOS, 7, 0, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion(ApplePlatform.MacOSX, 10, 10, throwIfOtherPlatform: false); using (var id = IdentityTest.GetIdentity()) using (var trust = new SecTrust(id.Certificate, SecPolicy.CreateBasicX509Policy())) using (var peer = new MCPeerID("me")) { SecCertificate [] certs = new SecCertificate [trust.Count]; for (int i = 0; i < trust.Count; i++) { certs [i] = trust [i]; } using (var s = new MCSession(peer, id, certs, MCEncryptionPreference.Required)) { Assert.AreSame(s.MyPeerID, peer, "MyPeerID"); // it's a self-signed certificate that's used for the identity // so it's not added twice to the collection being returned Assert.That(s.SecurityIdentity.Count, Is.EqualTo((nuint)1), "SecurityIdentity"); Assert.That(s.SecurityIdentity.GetItem <SecIdentity> (0).Handle, Is.EqualTo(certs [0].Handle), "SecurityIdentity"); Assert.That(s.EncryptionPreference, Is.EqualTo(MCEncryptionPreference.Required), "EncryptionPreference"); Assert.That(s.ConnectedPeers, Is.Empty, "ConnectedPeers"); } } }
/// <summary> /// Initializes a new instance of the /// <see cref="U3DXT.iOS.Multipeer.SessionStartedReceivingResourceWithNameEventArgs"/> class. /// </summary> /// <param name="_session">_session.</param> /// <param name="_resourceName">_resource name.</param> /// <param name="_peerID">_peer I.</param> /// <param name="_progress">_progress.</param> public SessionDidReceiveCertificateEventArgs(MCSession _session, object[] _certificate, MCPeerID _peerID, bool _acceptCertificate=true) { acceptCertificate = _acceptCertificate; session = _session; certificate = _certificate; peerID = _peerID; }
public NearbyDevicesViewController(IntPtr handle) : base(handle) { myPhoneName = "A" + UIKit.UIDevice.CurrentDevice.Name; MyPhoneStatus.MyPeerID = myPhoneName; myPeerID = new MCPeerID(myPhoneName); Session = new MCSession(myPeerID); Session.Delegate = new ChatSessionDelegate(Session); //--------------------------------Advertiser---------------------------------------------------- var emptyDict = new NSDictionary(); AppDelegate.advertiser = new MCNearbyServiceAdvertiser(myPeerID, emptyDict, SERVICE_STRING); AppDelegate.advertiser.Delegate = new MyNearbyAdvertiserDelegate(this); System.Diagnostics.Debug.WriteLine("Starting advertising..."); AppDelegate.advertiser.StartAdvertisingPeer(); MyPhoneStatus.IsAdvertising = true; ////--------------------------------Browser------------------------------------------------------ //AppDelegate.browser = new MCNearbyServiceBrowser(myPeerID, SERVICE_STRING); //AppDelegate.browser.Delegate = new MyBrowserDelegate(myPeerID, Session); //System.Diagnostics.Debug.WriteLine("Starting browsing..."); //AppDelegate.browser.StartBrowsingForPeers(); //MyPhoneStatus.IsBrowsing = true; CachedPeerStatus.AddRange(AppDelegate.PeerHistoryMonitor.Values); }
public override void FoundPeer(MCNearbyServiceBrowser browser, MCPeerID peerID, NSDictionary info) { System.Console.WriteLine("MCNearbyServiceBrowserDelegate Found peer " + peerID.DisplayName); // Initialize dual purpose object status and cache object for PeerID if (!AppDelegate.PeerHistoryMonitor.ContainsKey(peerID.DisplayName)) { AppDelegate.PeerHistoryMonitor.Add(peerID.DisplayName, new PeerMonitorStatus() { LastActive = DateTime.UtcNow, PeerID = peerID }); } /* * * // DEBUG ONLY - this IF statement is commented out while only one machine is a browse * .. in the real world, both machines will be Advertiser and browser. * * // commented out while testing on two different machines (one is dedicated browser, other is dedicated advertiser... see NearbyDevicesViewController.cs) * * */ // Connect to server if the hash value is greater //if (browser.MyPeerID.GetNativeHash() > peerID.GetNativeHash()) { System.Console.WriteLine("browser ID" + browser.MyPeerID.GetNativeHash()); System.Console.WriteLine("PeerID " + peerID.GetNativeHash()); browser.InvitePeer(peerID, session, context, 60); } }
public override void DidReceiveData(MCSession session, NSData data, MCPeerID peerID) { InvokeOnMainThread(() => { var alert = new UIAlertView("", data.ToString(), null, "OK"); alert.Show(); }); }
public void Ctor_Identity_Certificates() { if (!TestRuntime.CheckSystemAndSDKVersion(7, 0)) { Assert.Ignore("requires iOS7+"); } using (var id = IdentityTest.GetIdentity()) using (var trust = new SecTrust(id.Certificate, SecPolicy.CreateBasicX509Policy())) using (var peer = new MCPeerID("me")) { SecCertificate [] certs = new SecCertificate [trust.Count]; for (int i = 0; i < trust.Count; i++) { certs [i] = trust [i]; } using (var s = new MCSession(peer, id, certs, MCEncryptionPreference.Required)) { Assert.AreSame(s.MyPeerID, peer, "MyPeerID"); // it's a self-signed certificate that's used for the identity // so it's not added twice to the collection being returned Assert.That(s.SecurityIdentity.Count, Is.EqualTo(1), "SecurityIdentity"); Assert.That(s.SecurityIdentity.GetItem <SecIdentity> (0).Handle, Is.EqualTo(certs [0].Handle), "SecurityIdentity"); Assert.That(s.EncryptionPreference, Is.EqualTo(MCEncryptionPreference.Required), "EncryptionPreference"); Assert.That(s.ConnectedPeers, Is.Empty, "ConnectedPeers"); } } }
internal static void OnSessionDidChange(MCSession session, MCPeerID peerID, MCSessionState state) { if (_sessionChangedHandlers != null) { _sessionChangedHandlers(null, new SessionChangedEventArgs(session, peerID, state)); } }
void StartMultipeerAdvertiser() { peer = new MCPeerID("Player1"); session = new MCSession(peer); session.Delegate = sessionDelegate; assistant = new MCAdvertiserAssistant(serviceType, dict, session); assistant.Start(); }
/// <summary> /// Initializes a new instance of the /// <see cref="U3DXT.iOS.Multipeer.SessionFinishedReceivingResourceWithNameEventArgs"/> class. /// </summary> /// <param name="_session">_session.</param> /// <param name="_resourceName">_resource name.</param> /// <param name="_peerID">_peer I.</param> /// <param name="_localURL">_local UR.</param> /// <param name="_error">_error.</param> public SessionFinishedReceivingResourceWithNameEventArgs(MCSession _session, string _resourceName, MCPeerID _peerID, U3DXT.iOS.Native.Foundation.NSURL _localURL, U3DXT.iOS.Native.Foundation.NSError _error) { session = _session; resourceName = _resourceName; peerID = _peerID; localURL = _localURL; error = _error; }
public override void LostPeer(MCNearbyServiceBrowser browser, MCPeerID peerID) { System.Console.WriteLine("MCNearbyServiceBrowserDelegate LOST peer " + peerID.DisplayName); // Safe to skip null check in dictionary b/c FoundPeer runs first //AppDelegate. PeerHistoryMonitor[peerID.DisplayName].LastError = DateTime.UtcNow; //AppDelegate. PeerHistoryMonitor[peerID.DisplayName].LastErrorString = "Lost peer"; }
public override void FoundPeer(MCNearbyServiceBrowser browser, MCPeerID peerID, NSDictionary info) { if (_platformBluetooth._session != null) { Debug.WriteLine("### FOUND PEER: " + peerID.DisplayName); browser.InvitePeer(peerID, _platformBluetooth._session, null, 30); browser.StopBrowsingForPeers(); } }
void StartMultipeerBrowser() { peer = new MCPeerID("Monkey"); session = new MCSession(peer); session.Delegate = sessionDelegate; browser = new MCBrowserViewController(serviceType, session); browser.Delegate = browserDelegate; browser.ModalPresentationStyle = UIModalPresentationStyle.FormSheet; this.PresentViewController(browser, true, null); }
/// <summary> /// Starts the advertiser assistant. /// </summary> /// <param name='displayName'> /// The display name for the local peer /// </param> /// <param name='serviceType'> /// The type of service to advertise. Must be 1-15 characters long, only ASCII lower case characters. /// </param> public static void StartAdvertiserAssistant(string displayName, string serviceType) { _peerId = new MCPeerID(displayName); _session = new MCSession(_peerId); _advertiserAssistant = new MCAdvertiserAssistant(serviceType, null, _session); _advertiserAssistant.Start(); _session.Delegate = SessionDelegate.instance; _advertiserAssistant.Delegate = AdvertiserAssistantDelegate.instance; }
public void LocalPeer() { TestRuntime.AssertSystemVersion(PlatformName.iOS, 7, 0, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion(PlatformName.TvOS, 10, 0, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion(PlatformName.MacOSX, 10, 10, throwIfOtherPlatform: false); using (var peer = new MCPeerID("myself")) { Assert.That(peer.DisplayName, Is.EqualTo("myself"), "DisplayName"); } }
public void Defaults() { TestRuntime.AssertSystemVersion(PlatformName.iOS, 7, 0, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion(PlatformName.TvOS, 10, 0, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion(PlatformName.MacOSX, 10, 10, throwIfOtherPlatform: false); using (var peer = new MCPeerID()) { Assert.Null(peer.DisplayName, "DisplayName"); } }
public void Defaults() { TestRuntime.AssertSystemVersion(ApplePlatform.iOS, 7, 0, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion(ApplePlatform.TVOS, 10, 0, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion(ApplePlatform.MacOSX, 10, 10, throwIfOtherPlatform: false); using (var peer = new MCPeerID("MyDisplayName")) { Assert.AreEqual("MyDisplayName", peer.DisplayName, "DisplayName"); } }
public void Defaults() { if (!TestRuntime.CheckSystemAndSDKVersion(7, 0)) { Assert.Ignore("requires iOS7+"); } using (var peer = new MCPeerID()) { Assert.Null(peer.DisplayName, "DisplayName"); } }
/// <summary> /// Shows the default iOS7.0 Browser view that enables users to invite nearby devices to a session. /// </summary> /// <param name='displayName'> /// The display name for the local peer /// </param> /// <param name='serviceType'> /// The type of service to browse for. Must be 1-15 characters long, only ASCII lower case characters. /// </param> public static void ShowBrowser(string displayName, string serviceType) { _peerId = new MCPeerID(displayName); _session = new MCSession(_peerId); _browserVC = new MCBrowserViewController(serviceType, _session); _browserVC.Delegate = BrowserViewControllerDelegate.instance; _session.Delegate = SessionDelegate.instance; UIApplication.deviceRootViewController.PresentViewController(_browserVC, false, null); }
public void LocalPeer() { if (!TestRuntime.CheckSystemAndSDKVersion(7, 0)) { Assert.Ignore("requires iOS7+"); } using (var peer = new MCPeerID("myself")) { Assert.That(peer.DisplayName, Is.EqualTo("myself"), "DisplayName"); } }
public void LostPeer(MCNearbyServiceBrowser browser, MCPeerID peerID) { DispatchQueue.MainQueue.DispatchAsync(() => { var removed = this.games.FirstOrDefault(game => game.Host.PeerId != peerID); if (removed != null) { this.games.Remove(removed); this.Delegate?.SawGames(this, new List <NetworkGame>(this.games)); } }); }
public void Ctor_OptionalIdentity() { TestRuntime.AssertSystemVersion(PlatformName.iOS, 7, 0, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion(PlatformName.MacOSX, 10, 10, throwIfOtherPlatform: false); using (var peer = new MCPeerID("me")) using (var s = new MCSession(peer, null, MCEncryptionPreference.None)) { Assert.AreSame(s.MyPeerID, peer, "MyPeerID"); Assert.Null(s.SecurityIdentity, "SecurityIdentity"); Assert.That(s.EncryptionPreference, Is.EqualTo(MCEncryptionPreference.None), "EncryptionPreference"); Assert.That(s.ConnectedPeers, Is.Empty, "ConnectedPeers"); } }
internal static void StartConversation(MCSession session, MCPeerID peerID, MCSessionState state) { // do you have data to send? // Do I have data to send to you? // IF no to both, let's check back in within X minutes. NSError error = null; session.SendData(NSData.FromString("hi"), session.ConnectedPeers, MCSessionSendDataMode.Reliable, out error); if (error != null) { AppDelegate.PeerHistoryMonitor[peerID.DisplayName].LastSendDataError = error; } }
public void Ctor_OptionalIdentity() { if (!TestRuntime.CheckSystemAndSDKVersion(7, 0)) { Assert.Ignore("requires iOS7+"); } using (var peer = new MCPeerID("me")) using (var s = new MCSession(peer, null, MCEncryptionPreference.None)) { Assert.AreSame(s.MyPeerID, peer, "MyPeerID"); Assert.Null(s.SecurityIdentity, "SecurityIdentity"); Assert.That(s.EncryptionPreference, Is.EqualTo(MCEncryptionPreference.None), "EncryptionPreference"); Assert.That(s.ConnectedPeers, Is.Empty, "ConnectedPeers"); } }
public void Ctor_Identity() { TestRuntime.AssertSystemVersion(PlatformName.iOS, 7, 0, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion(PlatformName.MacOSX, 10, 10, throwIfOtherPlatform: false); using (var id = IdentityTest.GetIdentity()) using (var peer = new MCPeerID("me")) using (var s = new MCSession(peer, id, MCEncryptionPreference.Required)) { Assert.AreSame(s.MyPeerID, peer, "MyPeerID"); Assert.That(s.SecurityIdentity.Count, Is.EqualTo((nuint)1), "SecurityIdentity"); Assert.That(s.SecurityIdentity.GetItem <SecIdentity> (0).Handle, Is.EqualTo(id.Handle), "SecurityIdentity"); Assert.That(s.EncryptionPreference, Is.EqualTo(MCEncryptionPreference.Required), "EncryptionPreference"); Assert.That(s.ConnectedPeers, Is.Empty, "ConnectedPeers"); } }
public void CtorPeer() { if (!TestRuntime.CheckSystemAndSDKVersion(7, 0)) { Assert.Ignore("requires iOS7+"); } using (var peer = new MCPeerID("me")) using (var s = new MCSession(peer)) { Assert.AreSame(s.MyPeerID, peer, "MyPeerID"); Assert.Null(s.SecurityIdentity, "SecurityIdentity"); var pref = UIDevice.CurrentDevice.CheckSystemVersion(9, 0) ? MCEncryptionPreference.Required : MCEncryptionPreference.Optional; Assert.That(s.EncryptionPreference, Is.EqualTo(pref), "EncryptionPreference"); Assert.That(s.ConnectedPeers, Is.Empty, "ConnectedPeers"); } }
/// <summary> /// Initializes a new instance of the <see cref="U3DXT.iOS.Multipeer.SessionChangedEventArgs"/> class. /// </summary> /// <param name="_session">_session.</param> /// <param name="_peerID">_peer I.</param> /// <param name="_state">_state.</param> public SessionChangedEventArgs(MCSession _session, MCPeerID _peerID, MCSessionState _state) { session = _session; peerID = _peerID; state = _state; }
public override void DidStartReceivingResource(MCSession session, string resourceName, MCPeerID fromPeer, NSProgress progress) { }
public override void DidReceiveStream(MCSession session, NSInputStream stream, string streamName, MCPeerID peerID) { }
public override void DidFinishReceivingResourceWithName(MCSession session, string resourceName, MCPeerID peerID, U3DXT.iOS.Native.Foundation.NSURL localURL, U3DXT.iOS.Native.Foundation.NSError error) { MultipeerXT.OnSessionDidFinishReceivingResourceWithName(session, resourceName, peerID, localURL, error); }
public override void DidStartReceivingResourceWithName(MCSession session, string resourceName, MCPeerID peerID, U3DXT.iOS.Native.Foundation.NSProgress progress) { MultipeerXT.OnSessionDidStartReceivingResourceWithName(session, resourceName, peerID, progress); }
internal static void OnSessionDidRecieve(MCSession session, U3DXT.iOS.Native.Foundation.NSData data, MCPeerID peerID) { if (_sessionReceivedHandlers != null) _sessionReceivedHandlers(null, new SessionReceivedEventArgs(session, data, peerID)); }
internal static void OnSessionDidChange(MCSession session, MCPeerID peerID, MCSessionState state) { if (_sessionChangedHandlers != null) _sessionChangedHandlers(null, new SessionChangedEventArgs(session, peerID, state)); }
internal static bool OnSessionDidReceiveCertificate(MCSession session, object[] certificate, MCPeerID peerID) { SessionDidReceiveCertificateEventArgs certArgs = new SessionDidReceiveCertificateEventArgs(session, certificate, peerID); if (_sessionDidReceiveCertificateHandlers != null) _sessionDidReceiveCertificateHandlers(null, certArgs); return certArgs.acceptCertificate; }
public override void DidReceive(MCSession session, U3DXT.iOS.Native.Foundation.NSData data, MCPeerID peerID) { MultipeerXT.OnSessionDidRecieve(session, data, peerID); }
/// <summary> /// Initializes a new instance of the <see cref="U3DXT.iOS.Multipeer.SessionReceivedEventArgs"/> class. /// </summary> /// <param name="_session">_session.</param> /// <param name="_data">_data.</param> /// <param name="_peerID">_peer I.</param> public SessionReceivedEventArgs(MCSession _session, U3DXT.iOS.Native.Foundation.NSData _data, MCPeerID _peerID) { session = _session; data = _data; peerID = _peerID; }
/* * always return certicate to be accept */ public override bool DidReceiveCertificate(MCSession session, object[] certificate, MCPeerID peerID) { return MultipeerXT.OnSessionDidReceiveCertificate(session, certificate, peerID); }
void StartMultipeerAdvertiser() { peer = new MCPeerID ("Player1"); session = new MCSession (peer); session.Delegate = sessionDelegate; assistant = new MCAdvertiserAssistant (serviceType, dict, session); assistant.Start (); }
internal static void OnSessionDidFinishReceivingResourceWithName(MCSession session, string resourceName, MCPeerID peerID, U3DXT.iOS.Native.Foundation.NSURL localURL, U3DXT.iOS.Native.Foundation.NSError error) { if (_sessionFinishedReceivingResourceWithNameHandlers != null) _sessionFinishedReceivingResourceWithNameHandlers(null, new SessionFinishedReceivingResourceWithNameEventArgs(session, resourceName, peerID, localURL, error)); }
void StartMultipeerBrowser() { peer = new MCPeerID ("Monkey"); session = new MCSession (peer); session.Delegate = sessionDelegate; browser = new MCBrowserViewController (serviceType, session); browser.Delegate = browserDelegate; browser.ModalPresentationStyle = UIModalPresentationStyle.FormSheet; this.PresentViewController (browser, true, null); }
internal static void OnSessionDidStartReceivingResourceWithName(MCSession session, string resourceName, MCPeerID peerID, U3DXT.iOS.Native.Foundation.NSProgress progress) { if (_sessionStartedReceivingResourceWithNameHandlers != null) _sessionStartedReceivingResourceWithNameHandlers(null, new SessionStartedReceivingResourceWithNameEventArgs(session, resourceName, peerID, progress)); }
public override void DidChangeState(MCSession session, MCPeerID peerID, MCSessionState state) { switch (state) { case MCSessionState.Connected: Console.WriteLine ("Connected: {0}", peerID.DisplayName); break; case MCSessionState.Connecting: Console.WriteLine ("Connecting: {0}", peerID.DisplayName); break; case MCSessionState.NotConnected: Console.WriteLine ("Not Connected: {0}", peerID.DisplayName); break; } }
private void SessionChanged(object sender, SessionChangedEventArgs e) { Log("Session Changed " + e.state); if (e.state == U3DXT.iOS.Native.MultipeerConnectivity.MCSessionState.Connected ) { Log("CONNECTED"); string path = Application.temporaryCachePath+"/u3dxt.jpg"; // create some arbitary binary data. or load from existing location FileStream someFile = new FileStream(path, FileMode.Create); someFile.WriteByte(0x42); someFile.Close(); path = "http://u3dxt.com/wp-content/uploads/2013/06/gears_14662320_s-225x225.jpg"; _session = e.session; _peerId = e.peerID; _session.SendResourceAtURL(new U3DXT.iOS.Native.Foundation.NSURL(path), "u3dxt.jpg", e.peerID, sendResourceCompleted); } }
public override void DidFinishReceivingResource(MCSession session, string resourceName, MCPeerID formPeer, NSUrl localUrl, NSError error) { error = null; }
public override void DidReceiveData(MCSession session, NSData data, MCPeerID peerID) { InvokeOnMainThread (() => { var alert = new UIAlertView ("", data.ToString (), null, "OK"); alert.Show (); }); }
public override void DidChange(MCSession session, MCPeerID peerID, MCSessionState state) { MultipeerXT.OnSessionDidChange(session, peerID, state); }