一种简单的方式来请求 iOS 平台的授权。
Cocoapods
pod 'EasyPermission'
支持的权限隐私类型
typedef NS_ENUM(NSUInteger, EasyPermissionPrivacyType) {
EasyPermissionPrivacyTypeCamera,
EasyPermissionPrivacyTypePhotoLibrary,
EasyPermissionPrivacyTypeMicrophone,
EasyPermissionPrivacyTypeLocationAlways,
EasyPermissionPrivacyTypeLocationWhenInUse,
EasyPermissionPrivacyTypeLocationAlwaysAndWhenInUse,
EasyPermissionPrivacyTypeContacts NS_ENUM_AVAILABLE_IOS(9_0),
EasyPermissionPrivacyTypeReminders,
EasyPermissionPrivacyTypeCalendars,
EasyPermissionPrivacyTypeSiri NS_ENUM_AVAILABLE_IOS(10_0),
EasyPermissionPrivacyTypeSpeechRecognition NS_ENUM_AVAILABLE_IOS(10_0),
EasyPermissionPrivacyTypeMusic NS_ENUM_AVAILABLE_IOS(9_3),
EasyPermissionPrivacyTypeMotion NS_ENUM_AVAILABLE_IOS(11_0),
EasyPermissionPrivacyTypeBluetooth
};
支持的授权状态
typedef NS_ENUM(NSUInteger, EasyPermissionAuthorizationStatus) {
EasyPermissionAuthorizationStatusNotDetermined,
EasyPermissionAuthorizationStatusRestricted,
EasyPermissionAuthorizationStatusDenied,
EasyPermissionAuthorizationStatusAuthorized
};
使用方法
+ (void)authorizationRequestWithPrivacyType:(EasyPermissionPrivacyType)privacyType
completionHandler:(void (^)(EasyPermissionAuthorizationStatus status))handler;
+ (EasyPermissionAuthorizationStatus)getAuthorizationStatusWithPrivacyType:(EasyPermissionPrivacyType)type;