Exemple #1
0
 public LocationListener(
     ICheckPermissionProvider permissionProvider,
     IExceptionHandlerService exceptionHandling,
     ISchedulerFactory scheduler,
     CLLocationManager locationManager = null) : base(permissionProvider, exceptionHandling, scheduler)
 {
     _locationManager = locationManager;
     PositionFactory  = createPositionFromPlatform;
 }
 public LocationListener(
     ICheckPermissionProvider permissionProvider,
     IExceptionHandlerService exceptionHandling,
     ISchedulerFactory scheduler,
     LocationRequest locationRequest = null) : base(permissionProvider, exceptionHandling, scheduler)
 {
     mLocationRequest     = locationRequest;
     mFusedLocationClient = LocationServices.GetFusedLocationProviderClient(GetContext());
     _myCallback          = new LocationCallbackImpl();
     PositionFactory      = createPositionFromPlatform;
 }
Exemple #3
0
 public static LocationListener Create
 (
     IExceptionHandlerService exceptionHandler = null,
     ISchedulerFactory scheduler = null,
     ICheckPermissionProvider permissionProvider = null
 )
 {
     scheduler          = scheduler ?? CreateScheduler();
     exceptionHandler   = exceptionHandler ?? CreateExceptionHandler();
     permissionProvider = permissionProvider ?? CreatePermissionProvider(scheduler);
     return(new LocationListener(permissionProvider, exceptionHandler, scheduler));
 }
        public LocationListenerBase(
            ICheckPermissionProvider permissionProvider,
            IExceptionHandlerService exceptionHandling,
            ISchedulerFactory scheduler)
        {
            _scheduler          = scheduler ?? throw new ArgumentNullException(nameof(scheduler));
            _exceptionHandling  = exceptionHandling ?? throw new ArgumentNullException(nameof(exceptionHandling));
            _permissionProvider = permissionProvider ?? throw new ArgumentNullException(nameof(permissionProvider));

            _isListeningForChangesObs        = new BehaviorSubject <bool>(false);
            _isListeningForChangesImperative = false;

            _PositionChanged =
                new Lazy <IObservable <LocationRecorded> >(createPositionChanged);
        }
        public static IObservable <bool> CheckLocationPermission
        (
            this ICheckPermissionProvider permissionProvider,
            IExceptionHandlerService exceptionHandler
        ) =>
        permissionProvider
        .Location
        .Select(result =>
        {
            if (!result)
            {
                exceptionHandler.LogException(new LocationActivationException(ActivationFailedReasons.PermissionsIssue));
                return(false);
            }

            return(true);
        });
 public LocationListener(
     ICheckPermissionProvider permissionProvider,
     IExceptionHandlerService exceptionHandling,
     ISchedulerFactory scheduler)
 {
 }