Ejemplo n.º 1
0
        public SensorManagerImplementation(IRepoManager repoManager, CMMotionManager motionManager, CLLocationManager locationManager, CMPedometer pedometer)
        {
            _repoManager     = repoManager ?? throw new ArgumentNullException(nameof(repoManager));
            _motionManager   = motionManager ?? throw new ArgumentNullException(nameof(motionManager));
            _locationManager = locationManager ?? throw new ArgumentNullException(nameof(locationManager));
            _pedometer       = pedometer ?? throw new ArgumentNullException(nameof(pedometer));

            _queue = new NSOperationQueue();

            _sensorMeasurementSessionRepository = _repoManager.SensorMeasurementSessionRepository;
            _accelerometerRepository            = _repoManager.AccelerometerRepository;
            _gyroscoperRepository         = _repoManager.GyroscopeRepository;
            _magnetometerRepository       = _repoManager.MagnetometerRepository;
            _linearAccelerationRepository = _repoManager.LinearAccelerationRepository;
            _orientationRepository        = _repoManager.OrientationRepository;
            _quaternionRepository         = _repoManager.QuaternionRepository;
            _gravityRepository            = _repoManager.GravityRepository;

            locationManager.DesiredAccuracy = CLLocation.AccuracyBest;
            locationManager.HeadingFilter   = 1;
            locationManager.AllowsBackgroundLocationUpdates = true;

            motionManager.DeviceMotionUpdateInterval  = 0.1;
            motionManager.AccelerometerUpdateInterval = 0.1;
            motionManager.GyroUpdateInterval          = 0.1;
            motionManager.MagnetometerUpdateInterval  = 0.1;
        }
Ejemplo n.º 2
0
 public StepManager_iOS()
 {
     pedometer         = new CMPedometer();
     locationManager   = new LocationManager_iOS();
     stepCounts        = 0;
     beforeStepCounts  = 0;
     hasCountTagerArea = false;
     isCountTargetArea = false;
     isStarted         = false;
 }
Ejemplo n.º 3
0
        public MotionManager()
        {
            RecentActivities       = new List <Activity> ();
            recentMotionActivities = new List <CMMotionActivity> ();
            recentPedometerData    = new List <CMPedometerData> ();
            recentAltitudeData     = new List <CMAltitudeData> ();

            activityManager = new CMMotionActivityManager();
            pedometer       = new CMPedometer();
            altimeter       = new CMAltimeter();
        }
		CMPedometer pedometer; // since iOS 8.0

		public MotionPrivacyManager ()
		{
			if (UIDevice.CurrentDevice.CheckSystemVersion (8, 0)) {
				pedometer = new CMPedometer ();
				motionStatus = CMPedometer.IsStepCountingAvailable ? "Available" : "Not available";
			} else {
				stepCounter = new CMStepCounter ();
				motionManger = new CMMotionManager ();
				motionStatus = motionManger.DeviceMotionAvailable ? "Available" : "Not available";
			}
		}
Ejemplo n.º 5
0
        CMPedometer pedometer;         // since iOS 8.0

        public MotionPrivacyManager()
        {
            if (UIDevice.CurrentDevice.CheckSystemVersion(8, 0))
            {
                pedometer    = new CMPedometer();
                motionStatus = CMPedometer.IsStepCountingAvailable ? "Available" : "Not available";
            }
            else
            {
                stepCounter  = new CMStepCounter();
                motionManger = new CMMotionManager();
                motionStatus = motionManger.DeviceMotionAvailable ? "Available" : "Not available";
            }
        }
Ejemplo n.º 6
0
        protected override async Task InitializeAsync()
        {
            await base.InitializeAsync();

            if (await SensusServiceHelper.Get().ObtainPermissionAsync(Permission.Sensors) == PermissionStatus.Granted)
            {
                _motionManager = new CMPedometer();
            }
            else
            {
                // throw standard exception instead of NotSupportedException, since the user might decide to enable sensors in the future
                // and we'd like the probe to be restarted at that time.
                string error = "This device does not contain a Pedometer, or the user has denied access to it. Cannot start pedometer probe.";
                await SensusServiceHelper.Get().FlashNotificationAsync(error);

                throw new Exception(error);
            }
        }
		void initMotionActivity ()
		{
			motionActivityMgr = new CMMotionActivityManager ();
			pedometer = new CMPedometer ();
		}
Ejemplo n.º 8
0
 void initMotionActivity()
 {
     motionActivityMgr = new CMMotionActivityManager();
     pedometer         = new CMPedometer();
 }
Ejemplo n.º 9
0
 private Pedometer(CMPedometer pedometer) => _pedometer = pedometer;
Ejemplo n.º 10
0
		public MotionManager ()
		{
			RecentActivities = new List<Activity> ();
			recentMotionActivities = new List<CMMotionActivity> ();
			recentPedometerData = new List<CMPedometerData> ();
			recentAltitudeData = new List<CMAltitudeData> ();

			activityManager = new CMMotionActivityManager ();
			pedometer = new CMPedometer ();
			altimeter = new CMAltimeter ();
		}