Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
permission_handler
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
songyanzhi
permission_handler
Commits
16c13f4f
Commit
16c13f4f
authored
Feb 26, 2021
by
Daniel Roek
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Removed PermissionStatusNotDetermined from iOS implementation
parent
671610b6
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
47 additions
and
52 deletions
+47
-52
permission_handler/ios/Classes/PermissionHandlerEnums.h
+0
-1
permission_handler/ios/Classes/PermissionManager.m
+1
-2
permission_handler/ios/Classes/strategies/AudioVideoPermissionStrategy.m
+7
-7
permission_handler/ios/Classes/strategies/ContactPermissionStrategy.m
+4
-4
permission_handler/ios/Classes/strategies/EventPermissionStrategy.m
+7
-7
permission_handler/ios/Classes/strategies/LocationPermissionStrategy.m
+5
-5
permission_handler/ios/Classes/strategies/MediaLibraryPermissionStrategy.m
+5
-5
permission_handler/ios/Classes/strategies/NotificationPermissionStrategy.m
+2
-2
permission_handler/ios/Classes/strategies/PhonePermissionStrategy.m
+2
-2
permission_handler/ios/Classes/strategies/PhotoPermissionStrategy.m
+3
-3
permission_handler/ios/Classes/strategies/SensorPermissionStrategy.m
+4
-4
permission_handler/ios/Classes/strategies/SpeechPermissionStrategy.m
+5
-5
permission_handler/ios/Classes/strategies/UnknownPermissionStrategy.m
+2
-2
permission_handler/lib/permission_handler.dart
+0
-3
No files found.
permission_handler/ios/Classes/PermissionHandlerEnums.h
View file @
16c13f4f
...
...
@@ -115,7 +115,6 @@ typedef NS_ENUM(int, PermissionStatus) {
PermissionStatusDenied
=
0
,
PermissionStatusGranted
,
PermissionStatusRestricted
,
PermissionStatusNotDetermined
,
PermissionStatusLimited
,
};
...
...
permission_handler/ios/Classes/PermissionManager.m
View file @
16c13f4f
...
...
@@ -75,8 +75,7 @@
BOOL
success
=
[[
UIApplication
sharedApplication
]
openURL
:[
NSURL
URLWithString
:
UIApplicationOpenSettingsURLString
]];
result
([[
NSNumber
alloc
]
initWithBool
:
success
]);
}
else
{
result
(
@false
);
}
result
(
@false
);
}
}
+
(
id
)
createPermissionStrategy
:
(
PermissionGroup
)
permission
{
...
...
permission_handler/ios/Classes/strategies/AudioVideoPermissionStrategy.m
View file @
16c13f4f
...
...
@@ -19,7 +19,7 @@
return
[
AudioVideoPermissionStrategy
permissionStatus
:
AVMediaTypeAudio
];
#endif
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
-
(
ServiceStatus
)
checkServiceStatus
:(
PermissionGroup
)
permission
{
...
...
@@ -29,7 +29,7 @@
-
(
void
)
requestPermission
:(
PermissionGroup
)
permission
completionHandler
:(
PermissionStatusHandler
)
completionHandler
{
PermissionStatus
status
=
[
self
checkPermissionStatus
:
permission
];
if
(
status
!=
PermissionStatus
NotDetermin
ed
)
{
if
(
status
!=
PermissionStatus
Deni
ed
)
{
completionHandler
(
status
);
return
;
}
...
...
@@ -40,18 +40,18 @@
#if PERMISSION_CAMERA
mediaType
=
AVMediaTypeVideo
;
#else
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
return
;
#endif
}
else
if
(
permission
==
PermissionGroupMicrophone
)
{
#if PERMISSION_MICROPHONE
mediaType
=
AVMediaTypeAudio
;
#else
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
return
;
#endif
}
else
{
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
return
;
}
...
...
@@ -69,7 +69,7 @@
switch
(
status
)
{
case
AVAuthorizationStatusNotDetermined
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
case
AVAuthorizationStatusRestricted
:
return
PermissionStatusRestricted
;
case
AVAuthorizationStatusDenied
:
...
...
@@ -78,7 +78,7 @@
return
PermissionStatusGranted
;
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
@end
...
...
permission_handler/ios/Classes/strategies/ContactPermissionStrategy.m
View file @
16c13f4f
...
...
@@ -20,7 +20,7 @@
-
(
void
)
requestPermission
:(
PermissionGroup
)
permission
completionHandler
:(
PermissionStatusHandler
)
completionHandler
{
PermissionStatus
status
=
[
self
checkPermissionStatus
:
permission
];
if
(
status
!=
PermissionStatus
NotDetermin
ed
)
{
if
(
status
!=
PermissionStatus
Deni
ed
)
{
completionHandler
(
status
);
}
...
...
@@ -37,7 +37,7 @@
switch
(
status
)
{
case
CNAuthorizationStatusNotDetermined
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
case
CNAuthorizationStatusRestricted
:
return
PermissionStatusRestricted
;
case
CNAuthorizationStatusDenied
:
...
...
@@ -51,7 +51,7 @@
switch
(
status
)
{
case
kABAuthorizationStatusNotDetermined
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
case
kABAuthorizationStatusRestricted
:
return
PermissionStatusRestricted
;
case
kABAuthorizationStatusDenied
:
...
...
@@ -61,7 +61,7 @@
}
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
+
(
void
)
requestPermissionsFromContactStore
:
(
PermissionStatusHandler
)
completionHandler
API_AVAILABLE
(
ios
(
9
))
{
...
...
permission_handler/ios/Classes/strategies/EventPermissionStrategy.m
View file @
16c13f4f
...
...
@@ -20,7 +20,7 @@
#endif
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
-
(
ServiceStatus
)
checkServiceStatus
:(
PermissionGroup
)
permission
{
...
...
@@ -30,7 +30,7 @@
-
(
void
)
requestPermission
:(
PermissionGroup
)
permission
completionHandler
:(
PermissionStatusHandler
)
completionHandler
{
PermissionStatus
permissionStatus
=
[
self
checkPermissionStatus
:
permission
];
if
(
permissionStatus
!=
PermissionStatus
NotDetermin
ed
)
{
if
(
permissionStatus
!=
PermissionStatus
Deni
ed
)
{
completionHandler
(
permissionStatus
);
return
;
}
...
...
@@ -41,18 +41,18 @@
#if PERMISSION_EVENTS
entityType
=
EKEntityTypeEvent
;
#else
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
return
;
#endif
}
else
if
(
permission
==
PermissionGroupReminders
)
{
#if PERMISSION_REMINDERS
entityType
=
EKEntityTypeReminder
;
#else
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
return
;
#endif
}
else
{
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
return
;
}
...
...
@@ -71,7 +71,7 @@
switch
(
status
)
{
case
EKAuthorizationStatusNotDetermined
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
case
EKAuthorizationStatusRestricted
:
return
PermissionStatusRestricted
;
case
EKAuthorizationStatusDenied
:
...
...
@@ -80,7 +80,7 @@
return
PermissionStatusGranted
;
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
@end
...
...
permission_handler/ios/Classes/strategies/LocationPermissionStrategy.m
View file @
16c13f4f
...
...
@@ -35,7 +35,7 @@
PermissionStatus
status
=
[
self
checkPermissionStatus
:
permission
];
if
([
CLLocationManager
authorizationStatus
]
==
kCLAuthorizationStatusAuthorizedWhenInUse
&&
permission
==
PermissionGroupLocationAlways
)
{
// don't do anything and continue requesting permissions
}
else
if
(
status
!=
PermissionStatus
NotDetermin
ed
)
{
}
else
if
(
status
!=
PermissionStatus
Deni
ed
)
{
completionHandler
(
status
);
}
...
...
@@ -105,7 +105,7 @@
if
(
permission
==
PermissionGroupLocationAlways
)
{
switch
(
authorizationStatus
)
{
case
kCLAuthorizationStatusNotDetermined
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
case
kCLAuthorizationStatusRestricted
:
return
PermissionStatusRestricted
;
case
kCLAuthorizationStatusAuthorizedWhenInUse
:
...
...
@@ -118,7 +118,7 @@
switch
(
authorizationStatus
)
{
case
kCLAuthorizationStatusNotDetermined
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
case
kCLAuthorizationStatusRestricted
:
return
PermissionStatusRestricted
;
case
kCLAuthorizationStatusDenied
:
...
...
@@ -134,7 +134,7 @@
switch
(
authorizationStatus
)
{
case
kCLAuthorizationStatusNotDetermined
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
case
kCLAuthorizationStatusRestricted
:
return
PermissionStatusRestricted
;
case
kCLAuthorizationStatusDenied
:
...
...
@@ -142,7 +142,7 @@
case
kCLAuthorizationStatusAuthorized
:
return
PermissionStatusGranted
;
default
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
#pragma clang diagnostic pop
...
...
permission_handler/ios/Classes/strategies/MediaLibraryPermissionStrategy.m
View file @
16c13f4f
...
...
@@ -19,7 +19,7 @@
-
(
void
)
requestPermission
:(
PermissionGroup
)
permission
completionHandler
:(
PermissionStatusHandler
)
completionHandler
{
PermissionStatus
status
=
[
self
checkPermissionStatus
:
permission
];
if
(
status
!=
PermissionStatus
NotDetermin
ed
)
{
if
(
status
!=
PermissionStatus
Deni
ed
)
{
completionHandler
(
status
);
return
;
}
...
...
@@ -29,7 +29,7 @@
completionHandler
([
MediaLibraryPermissionStrategy
determinePermissionStatus
:
status
]);
}];
}
else
{
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
return
;
}
}
...
...
@@ -41,13 +41,13 @@
return
[
MediaLibraryPermissionStrategy
determinePermissionStatus
:
status
];
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
+
(
PermissionStatus
)
determinePermissionStatus
:
(
MPMediaLibraryAuthorizationStatus
)
authorizationStatus
API_AVAILABLE
(
ios
(
9
.
3
)){
switch
(
authorizationStatus
)
{
case
MPMediaLibraryAuthorizationStatusNotDetermined
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
case
MPMediaLibraryAuthorizationStatusDenied
:
return
PermissionStatusDenied
;
case
MPMediaLibraryAuthorizationStatusRestricted
:
...
...
@@ -56,7 +56,7 @@
return
PermissionStatusGranted
;
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
@end
...
...
permission_handler/ios/Classes/strategies/NotificationPermissionStrategy.m
View file @
16c13f4f
...
...
@@ -21,7 +21,7 @@
-
(
void
)
requestPermission
:(
PermissionGroup
)
permission
completionHandler
:(
PermissionStatusHandler
)
completionHandler
{
PermissionStatus
status
=
[
self
checkPermissionStatus
:
permission
];
if
(
status
!=
PermissionStatus
NotDetermin
ed
)
{
if
(
status
!=
PermissionStatus
Deni
ed
)
{
completionHandler
(
status
);
return
;
}
...
...
@@ -66,7 +66,7 @@
if
(
settings
.
authorizationStatus
==
UNAuthorizationStatusDenied
)
{
permissionStatus
=
PermissionStatusDenied
;
}
else
if
(
settings
.
authorizationStatus
==
UNAuthorizationStatusNotDetermined
)
{
permissionStatus
=
PermissionStatus
NotDetermin
ed
;
permissionStatus
=
PermissionStatus
Deni
ed
;
}
dispatch_semaphore_signal
(
sem
);
}];
...
...
permission_handler/ios/Classes/strategies/PhonePermissionStrategy.m
View file @
16c13f4f
...
...
@@ -13,7 +13,7 @@
@implementation
PhonePermissionStrategy
-
(
PermissionStatus
)
checkPermissionStatus
:(
PermissionGroup
)
permission
{
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
-
(
ServiceStatus
)
checkServiceStatus
:(
PermissionGroup
)
permission
{
...
...
@@ -26,7 +26,7 @@
}
-
(
void
)
requestPermission
:(
PermissionGroup
)
permission
completionHandler
:(
PermissionStatusHandler
)
completionHandler
{
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
}
...
...
permission_handler/ios/Classes/strategies/PhotoPermissionStrategy.m
View file @
16c13f4f
...
...
@@ -31,7 +31,7 @@
-
(
void
)
requestPermission
:
(
PermissionGroup
)
permission
completionHandler
:
(
PermissionStatusHandler
)
completionHandler
{
PermissionStatus
status
=
[
self
checkPermissionStatus
:
permission
];
if
(
status
!=
PermissionStatus
NotDetermin
ed
)
{
if
(
status
!=
PermissionStatus
Deni
ed
)
{
completionHandler
(
status
);
return
;
}
...
...
@@ -61,7 +61,7 @@
+
(
PermissionStatus
)
determinePermissionStatus
:
(
PHAuthorizationStatus
)
authorizationStatus
{
switch
(
authorizationStatus
)
{
case
PHAuthorizationStatusNotDetermined
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
case
PHAuthorizationStatusRestricted
:
return
PermissionStatusRestricted
;
case
PHAuthorizationStatusDenied
:
...
...
@@ -72,7 +72,7 @@
return
PermissionStatusLimited
;
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
@end
...
...
permission_handler/ios/Classes/strategies/SensorPermissionStrategy.m
View file @
16c13f4f
...
...
@@ -25,7 +25,7 @@
-
(
void
)
requestPermission
:(
PermissionGroup
)
permission
completionHandler
:(
PermissionStatusHandler
)
completionHandler
{
PermissionStatus
status
=
[
self
checkPermissionStatus
:
permission
];
if
(
status
!=
PermissionStatus
NotDetermin
ed
)
{
if
(
status
!=
PermissionStatus
Deni
ed
)
{
completionHandler
(
status
);
return
;
}
...
...
@@ -42,7 +42,7 @@
}
}];
}
else
{
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
}
}
...
...
@@ -54,7 +54,7 @@
switch
(
status
)
{
case
CMAuthorizationStatusNotDetermined
:
permissionStatus
=
PermissionStatus
NotDetermin
ed
;
permissionStatus
=
PermissionStatus
Deni
ed
;
break
;
case
CMAuthorizationStatusRestricted
:
permissionStatus
=
PermissionStatusRestricted
;
...
...
@@ -72,7 +72,7 @@
return
permissionStatus
;
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
@end
...
...
permission_handler/ios/Classes/strategies/SpeechPermissionStrategy.m
View file @
16c13f4f
...
...
@@ -19,7 +19,7 @@
-
(
void
)
requestPermission
:(
PermissionGroup
)
permission
completionHandler
:(
PermissionStatusHandler
)
completionHandler
{
PermissionStatus
status
=
[
self
checkPermissionStatus
:
permission
];
if
(
status
!=
PermissionStatus
NotDetermin
ed
)
{
if
(
status
!=
PermissionStatus
Deni
ed
)
{
completionHandler
(
status
);
return
;
}
...
...
@@ -29,7 +29,7 @@
completionHandler
([
SpeechPermissionStrategy
determinePermissionStatus
:
authorizationStatus
]);
}];
}
else
{
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
}
}
...
...
@@ -40,13 +40,13 @@
return
[
SpeechPermissionStrategy
determinePermissionStatus
:
status
];
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
+
(
PermissionStatus
)
determinePermissionStatus
:
(
SFSpeechRecognizerAuthorizationStatus
)
authorizationStatus
API_AVAILABLE
(
ios
(
10
.
0
)){
switch
(
authorizationStatus
)
{
case
SFSpeechRecognizerAuthorizationStatusNotDetermined
:
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
case
SFSpeechRecognizerAuthorizationStatusDenied
:
return
PermissionStatusDenied
;
case
SFSpeechRecognizerAuthorizationStatusRestricted
:
...
...
@@ -55,7 +55,7 @@
return
PermissionStatusGranted
;
}
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
@end
...
...
permission_handler/ios/Classes/strategies/UnknownPermissionStrategy.m
View file @
16c13f4f
...
...
@@ -9,7 +9,7 @@
@implementation
UnknownPermissionStrategy
-
(
PermissionStatus
)
checkPermissionStatus
:(
PermissionGroup
)
permission
{
return
PermissionStatus
NotDetermin
ed
;
return
PermissionStatus
Deni
ed
;
}
-
(
ServiceStatus
)
checkServiceStatus
:(
PermissionGroup
)
permission
{
...
...
@@ -17,6 +17,6 @@
}
-
(
void
)
requestPermission
:(
PermissionGroup
)
permission
completionHandler
:(
PermissionStatusHandler
)
completionHandler
{
completionHandler
(
PermissionStatus
NotDetermin
ed
);
completionHandler
(
PermissionStatus
Deni
ed
);
}
@end
permission_handler/lib/permission_handler.dart
View file @
16c13f4f
...
...
@@ -53,9 +53,6 @@ extension PermissionActions on Permission {
/// Shortcuts for checking the [status] of a [Permission].
extension
PermissionCheckShortcuts
on
Permission
{
/// If this permission was never requested before.
Future
<
bool
>
get
isUndetermined
=>
status
.
isUndetermined
;
/// If the user granted this permission.
Future
<
bool
>
get
isGranted
=>
status
.
isGranted
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment