示例#1
0
 static void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (e.Status == CLAuthorizationStatus.Denied || e.Status == CLAuthorizationStatus.Restricted)
     {
         PositionError.RaiseOn(Thread.Pool, new Exception(UNAUTHORISED_ERROR));
     }
 }
示例#2
0
 void BeaconManagerAuthorizationStatusChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (e.Status == CLAuthorizationStatus.AuthorizedAlways)
     {
         _beaconManager.StartMonitoring(_beaconRegion);
     }
 }
示例#3
0
 protected void AuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (e.Status == CLAuthorizationStatus.AuthorizedWhenInUse)
     {
         (sender as CLLocationManager).StartUpdatingLocation();
     }
 }
示例#4
0
 private void LocHandlerEvent(object sender, CLAuthorizationChangedEventArgs args)
 {
     if (locHandler != null)
     {
         locHandler((int)args.Status);// this is CLLocationManager.Status
     }
 }
示例#5
0
        public void didAuthorizationChange(CLAuthorizationChangedEventArgs authStatus)
        {
            switch (authStatus.Status)
            {
            case CLAuthorizationStatus.AuthorizedAlways:
                locationManager.RequestAlwaysAuthorization();
                break;

            case CLAuthorizationStatus.AuthorizedWhenInUse:
                locationManager.StartUpdatingLocation();
                break;

            case CLAuthorizationStatus.Denied:
                UIAlertView alert = new UIAlertView();

                alert.Title = "Location Services Disabled";
                alert.AddButton("OK");
                alert.AddButton("Cancel");
                alert.Message        = "Enable locations for this app via\nthe Settings app on your iPhone";
                alert.AlertViewStyle = UIAlertViewStyle.Default;

                alert.Show();

                alert.Clicked += (object s, UIButtonEventArgs ev) =>
                {
                    var Button = ev.ButtonIndex;
                };
                break;

            default:
                break;
            }
        }
示例#6
0
 private void HandleAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (_authorizationChanged != null)
     {
         _authorizationChanged.TrySetResult(null);
     }
 }
示例#7
0
        private void DidAuthorisationChange(CLAuthorizationChangedEventArgs e)
        {
            switch (e.Status)
            {
            case CLAuthorizationStatus.AuthorizedAlways:
                locationManager.RequestAlwaysAuthorization();
                break;

            case CLAuthorizationStatus.AuthorizedWhenInUse:
                locationManager.StartUpdatingLocation();
                break;

            case CLAuthorizationStatus.Denied:
                UIAlertView alertView = new UIAlertView()
                {
                    Title          = "Location Services Disabled",
                    Message        = "Enable locations for this app via\nthe Settings app on your iPhone",
                    AlertViewStyle = UIAlertViewStyle.Default
                };

                alertView.AddButton("OK");
                alertView.AddButton("Cancel");
                alertView.Show();
                break;

            default:
                break;
            }
        }
示例#8
0
 void BeaconManagerAuthorizationStatusChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (e.Status == CLAuthorizationStatus.AuthorizedAlways)
     {
         _beaconManager.StartMonitoring(_beaconRegion);
     }
 }
示例#9
0
 void ClManager_AuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (e.Status == CLAuthorizationStatus.AuthorizedAlways)
     {
         StartLocationUpdates();
     }
 }
示例#10
0
        private static void OnLocationRequested(object sender, CLAuthorizationChangedEventArgs e)
        {
            if (e.Status == CLAuthorizationStatus.NotDetermined)
            {
                return;
            }

            if (_requests.TryRemove(AuthorizationType.LocationWhenUse, out var times1))
            {
                for (int i = 0; i < times1; i++)
                {
                    RaiseAuthorizationRequested(AuthorizationType.LocationWhenUse, e.Status.ToShared(false));
                }
            }
            if (_requests.TryRemove(AuthorizationType.LocationAlways, out var times2))
            {
                for (int i = 0; i < times2; i++)
                {
                    RaiseAuthorizationRequested(AuthorizationType.LocationAlways, e.Status.ToShared(true));
                }
            }

            _locationManager.AuthorizationChanged -= OnLocationRequested;
            _locationManager.Dispose();
            _locationManager = null;
        }
 private void LocationManager_AuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (isAuthorized(e.Status))
     {
         locationManager.StartUpdatingLocation();
     }
 }
示例#12
0
 private void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (e.Status == CLAuthorizationStatus.Denied || e.Status == CLAuthorizationStatus.Restricted)
     {
         OnPositionError(new PositionErrorEventArgs(GeolocationError.Unauthorized));
     }
 }
示例#13
0
 void LocationManagerAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     Debug.WriteLine("Authorisation state: {0}", e.Status);
     if (e.Status == CLAuthorizationStatus.AuthorizedAlways)
     {
         _locationManager.StartRangingBeacons(_region);
     }
 }
		void OnAuthorizationChanged (object sender, CLAuthorizationChangedEventArgs e)
		{
			if (e.Status == CLAuthorizationStatus.AuthorizedWhenInUse)
				LocationManager.StartUpdatingLocation ();

			if(tcs != null)
				tcs.SetResult (null);
		}
示例#15
0
        private async void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            if (e.Status == CLAuthorizationStatus.Denied || e.Status == CLAuthorizationStatus.Restricted)
            {
                await StopListeningAsync();

                OnPositionError(new PositionErrorEventArgs(GeolocationError.Unauthorized));
            }
        }
        void LocationManagerAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            Debug.WriteLine("Authorisation state: {0}", e.Status);

            if (e.Status == CLAuthorizationStatus.AuthorizedAlways)
            {
                _locationManager.StartRangingBeacons(_region);
            }
        }
示例#17
0
 void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     AccessStatus.Text = e.Status.ToString();
     if (e.Status == CLAuthorizationStatus.AuthorizedWhenInUse)
     {
         mapView.ShowsUserLocation = true;
         locationManager.StartUpdatingLocation();
     }
 }
示例#18
0
 private void LocationManager_AuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (this.Locks != null)
     {
         foreach (Lock item in this.Locks)
         {
             CLBeaconRegion region = new CLBeaconRegion(new NSUuid(item.LockUUID.ToString()), item.LockName);
             _locationManager.StartRangingBeacons(region);
         }
     }
 }
示例#19
0
 void manager_AuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (e.Status == CLAuthorizationStatus.AuthorizedAlways | e.Status == CLAuthorizationStatus.AuthorizedWhenInUse)
     {
         Debug.WriteLine("User authorized");
         if (LocationStatus == PositionStatus.Disabled | LocationStatus == PositionStatus.NotAvailable)
         {
             LocationStatus = PositionStatus.Initializing;
         }
     }
 }
示例#20
0
 private void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (_AccessType == AccessType.Full)
     {
         State = ((e.Status == CLAuthorizationStatus.Authorized) || (e.Status == CLAuthorizationStatus.AuthorizedAlways)) ? LocationServiceState.Enabled : LocationServiceState.Disabled;
     }
     else if (_AccessType == AccessType.Partial)
     {
         State = ((e.Status == CLAuthorizationStatus.Authorized) || (e.Status == CLAuthorizationStatus.AuthorizedAlways) || (e.Status == CLAuthorizationStatus.AuthorizedWhenInUse)) ? LocationServiceState.Enabled : LocationServiceState.Disabled;
     }
 }
        void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            if (e.Status == CLAuthorizationStatus.AuthorizedWhenInUse)
            {
                LocationManager.StartUpdatingLocation();
            }

            if (tcs != null)
            {
                tcs.SetResult(null);
            }
        }
 private void LocationManager_AuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (e.Status == CLAuthorizationStatus.AuthorizedAlways || e.Status == CLAuthorizationStatus.AuthorizedWhenInUse)
     {
         UseLocationSwitch.On = true;
         EnableLocationSwitches(true);
     }
     else if (e.Status != CLAuthorizationStatus.NotDetermined)
     {
         c.Snack(LangEnglish.LocationNotGranted);
     }
 }
示例#23
0
        private void _locationManager_AuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            switch (e.Status)
            {
            case CLAuthorizationStatus.AuthorizedAlways:
            case CLAuthorizationStatus.AuthorizedWhenInUse:
                Status = GeofenceMonitorStatus.Initializing;
                break;

            case CLAuthorizationStatus.Denied:
                Status = GeofenceMonitorStatus.Disabled;
                break;
            }
        }
示例#24
0
 private void DidAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     /*
      * if (e.Status == CLAuthorizationStatus.AuthorizedAlways)
      * {
      *
      * }
      * else
      * {
      *  _locationMgr.StopRangingBeacons(_fieldRegion);
      *  _locationMgr.StopMonitoring(_fieldRegion);
      * }
      */
     System.Diagnostics.Debug.WriteLine("DidAuthorizationChanged");
 }
 void OnLocMgrAuthChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (e.Status == CLAuthorizationStatus.Denied)
     {
         CustomMap.LocationAuthStatus = CustomMap.LocAuthStatus.NotAllowed;
     }
     else if (e.Status == CLAuthorizationStatus.AuthorizedWhenInUse)
     {
         CustomMap.LocationAuthStatus = CustomMap.LocAuthStatus.AllowedInForeground;
     }
     else if (e.Status == CLAuthorizationStatus.AuthorizedAlways)
     {
         CustomMap.LocationAuthStatus = CustomMap.LocAuthStatus.AllowedInBackground;
     }
 }
示例#26
0
 private void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (IsActive)
     {
         if (e.Status == CLAuthorizationStatus.AuthorizedAlways ||
             e.Status == CLAuthorizationStatus.AuthorizedWhenInUse)
         {
             StartMonitoring();
         }
         else
         {
             StopMonitoring();
         }
     }
 }
 private void LocationManager_AuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     _locationManager.AuthorizationChanged -= LocationManager_AuthorizationChanged;
     if (CLLocationManager.Status == CLAuthorizationStatus.AuthorizedWhenInUse ||
         CLLocationManager.Status == CLAuthorizationStatus.AuthorizedAlways ||
         CLLocationManager.Status == CLAuthorizationStatus.Authorized)
     {
         _locationManager.StartUpdatingLocation();
         _tcs.TrySetResult(null);
     }
     else
     {
         _tcs.TrySetException(new UnauthorizedAccessException("User denied location access"));
     }
 }
示例#28
0
        void HandleAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            _locationManager.AuthorizationChanged -= HandleAuthorizationChanged;

            Action a = _onSuccessEnableLocationCallback;

            _onSuccessEnableLocationCallback = null;

            if (
                e.Status == CLAuthorizationStatus.Authorized &&
                a != null
                )
            {
                a();
            }
        }
示例#29
0
        private async void LocationManagerOnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs clAuthorizationChangedEventArgs)
        {
            switch (clAuthorizationChangedEventArgs.Status)
            {
            case CLAuthorizationStatus.Denied:
                UIApplication.SharedApplication.OpenUrl(new Foundation.NSUrl(UIApplication.OpenSettingsUrlString));
                break;

            case CLAuthorizationStatus.NotDetermined:
                locationManager.RequestWhenInUseAuthorization();
                break;

            default:
                break;
            }
        }
示例#30
0
        void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            if (e.Status == CLAuthorizationStatus.Denied || e.Status == CLAuthorizationStatus.Restricted)
            {
                OnLocationAuthorizationChanged(this, new AuthorizationEventArgs(LocationAuthorizationType.None));

                OnPositionError(new PositionErrorEventArgs(LocationErrorType.Unauthorized));
            }
            else if (e.Status == CLAuthorizationStatus.AuthorizedAlways)
            {
                OnLocationAuthorizationChanged(this, new AuthorizationEventArgs(LocationAuthorizationType.Always));
            }
            else if (e.Status == CLAuthorizationStatus.AuthorizedWhenInUse)
            {
                OnLocationAuthorizationChanged(this, new AuthorizationEventArgs(LocationAuthorizationType.WhenInUse));
            }
        }
        void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            switch (e.Status)
            {
            case CLAuthorizationStatus.AuthorizedAlways:
            case CLAuthorizationStatus.AuthorizedWhenInUse:
                Console.WriteLine("Got authorization, start tracking location");
                StartTrackingLocation();
                break;

            case CLAuthorizationStatus.NotDetermined:
                locationManager.RequestWhenInUseAuthorization();
                break;

            default:
                break;
            }
        }
示例#32
0
        void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            authorizationStatus = e.Status;

            switch (authorizationStatus)
            {
            case CLAuthorizationStatus.AuthorizedAlways:
                locationManager.StartUpdatingLocation();
                break;

            case CLAuthorizationStatus.NotDetermined:
                locationManager.RequestAlwaysAuthorization();
                break;

            default:
                break;
            }
        }
示例#33
0
		void OnAuthorizationChanged (object sender, CLAuthorizationChangedEventArgs e)
		{
			Console.WriteLine ("new authorization state = {0}", status);
			status = e.Status;

			switch (status) {
				case CLAuthorizationStatus.AuthorizedAlways:
					locationManager.StartUpdatingLocation ();
					break;

				case CLAuthorizationStatus.NotDetermined:
					locationManager.RequestAlwaysAuthorization ();
					break;

				default:
					break;
			}
		}
示例#34
0
        void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            Console.WriteLine("new authorization state = {0}", status);
            status = e.Status;

            switch (status)
            {
            case CLAuthorizationStatus.AuthorizedAlways:
                locationManager.StartUpdatingLocation();
                break;

            case CLAuthorizationStatus.NotDetermined:
                locationManager.RequestAlwaysAuthorization();
                break;

            default:
                break;
            }
        }
示例#35
0
		void handleAuthorizationChanged (object sender, CLAuthorizationChangedEventArgs e)
		{
			Log ("handleAuthorizationChanged");

			if (e.Status == CLAuthorizationStatus.NotDetermined) return;

			ClLocationManager.AuthorizationChanged -= handleAuthorizationChanged;

			if (!ClAuthTcs.TrySetResult (e.Status)) {
				Log ("ClAuthTcs Failed to Set Result");
			} else {
				Log ("ClAuthTcs Set Result");
			}
		}
示例#36
0
		private void OnAuthorizationChanged (object sender, CLAuthorizationChangedEventArgs e)
		{

			SystemLogger.Log (SystemLogger.Module.PLATFORM, "[K] OnAuthorizationChanged "+e.Status);
			if (e.Status == CLAuthorizationStatus.Denied || e.Status == CLAuthorizationStatus.Restricted)
				IPhoneUtils.GetInstance().FireUnityJavascriptEvent("Appverse.Geo.onAccessToLocationDenied", null);
		}
示例#37
0
        void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            authorizationStatus = e.Status;

            switch (authorizationStatus) {
            case CLAuthorizationStatus.AuthorizedAlways:
                locationManager.StartUpdatingLocation ();
                break;

            case CLAuthorizationStatus.NotDetermined:
                locationManager.RequestAlwaysAuthorization ();
                break;

            default:
                break;
            }
        }
        void HandleAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
        {
            _locationManager.AuthorizationChanged -= HandleAuthorizationChanged;

            Action a = _onSuccessEnableLocationCallback;
            _onSuccessEnableLocationCallback = null;

            if (
                e.Status == CLAuthorizationStatus.Authorized
                && a != null
                )
            {
                a();
            }
        }
 void LocationManagerAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     Debug.WriteLine("Authorisation state: {0}", e.Status);
 }
示例#40
0
 private void OnAuthorizationChanged(object sender, CLAuthorizationChangedEventArgs e)
 {
     if (e.Status == CLAuthorizationStatus.Denied || e.Status == CLAuthorizationStatus.Restricted)
         OnPositionError(new PositionErrorEventArgs(GeolocationError.Unauthorized));
 }
		void OnAuthorizationChanged (object sender, CLAuthorizationChangedEventArgs e)
		{
			Console.WriteLine ("new authorization state = {0}", e.Status);
			status = e.Status;
			locationManager.StartUpdatingLocation ();
		}
		void OnAuthorizationChanged (object sender, CLAuthorizationChangedEventArgs e)
		{
			switch (e.Status) {
				case CLAuthorizationStatus.AuthorizedAlways:
				case CLAuthorizationStatus.AuthorizedWhenInUse:
					Console.WriteLine ("Got authorization, start tracking location");
					StartTrackingLocation ();
					break;

				case CLAuthorizationStatus.NotDetermined:
					locationManager.RequestWhenInUseAuthorization ();
					break;

				default:
					break;
			}
		}
示例#43
0
		private void HandleAuthorizationChanged (object sender, CLAuthorizationChangedEventArgs e)
		{
			if (_authorizationChanged != null) {
				_authorizationChanged.TrySetResult (null);
			}
		}