|
|
@@ -22,7 +22,7 @@ static NSString* handlerKey = @"motion";
|
|
22
|
22
|
if (![CMMotionActivityManager isActivityAvailable]) {
|
|
23
|
23
|
return resolve(RNPermissionStatusNotAvailable);
|
|
24
|
24
|
}
|
|
25
|
|
-
|
|
|
25
|
+
|
|
26
|
26
|
if (@available(iOS 11.0, *)) {
|
|
27
|
27
|
switch ([CMMotionActivityManager authorizationStatus]) {
|
|
28
|
28
|
case CMAuthorizationStatusNotDetermined:
|
|
|
@@ -35,11 +35,11 @@ static NSString* handlerKey = @"motion";
|
|
35
|
35
|
return resolve(RNPermissionStatusAuthorized);
|
|
36
|
36
|
}
|
|
37
|
37
|
}
|
|
38
|
|
-
|
|
|
38
|
+
|
|
39
|
39
|
if (![RNPermissionsManager hasBeenRequestedOnce:self]) {
|
|
40
|
40
|
return resolve(RNPermissionStatusNotDetermined);
|
|
41
|
41
|
}
|
|
42
|
|
-
|
|
|
42
|
+
|
|
43
|
43
|
[self requestWithOptions:nil withResolver:resolve withRejecter:reject];
|
|
44
|
44
|
}
|
|
45
|
45
|
|
|
|
@@ -49,10 +49,10 @@ static NSString* handlerKey = @"motion";
|
|
49
|
49
|
if (![CMMotionActivityManager isActivityAvailable]) {
|
|
50
|
50
|
return resolve(RNPermissionStatusNotAvailable);
|
|
51
|
51
|
}
|
|
52
|
|
-
|
|
|
52
|
+
|
|
53
|
53
|
_motionActivityManager = [CMMotionActivityManager new];
|
|
54
|
54
|
_motionActivityQueue = [NSOperationQueue new];
|
|
55
|
|
-
|
|
|
55
|
+
|
|
56
|
56
|
[_motionActivityManager queryActivityStartingFromDate:[NSDate distantPast] toDate:[NSDate date] toQueue:_motionActivityQueue withHandler:^(NSArray<CMMotionActivity *> * _Nullable activities, NSError * _Nullable error) {
|
|
57
|
57
|
if (error != nil) {
|
|
58
|
58
|
if (error.code == CMErrorNotAuthorized || error.code == CMErrorMotionActivityNotAuthorized) {
|
|
|
@@ -65,7 +65,7 @@ static NSString* handlerKey = @"motion";
|
|
65
|
65
|
} else {
|
|
66
|
66
|
resolve(RNPermissionStatusNotDetermined);
|
|
67
|
67
|
}
|
|
68
|
|
-
|
|
|
68
|
+
|
|
69
|
69
|
self->_motionActivityManager = nil;
|
|
70
|
70
|
self->_motionActivityQueue = nil;
|
|
71
|
71
|
}];
|