iOS 10 隐私权限管理和设置

iOS 10之后苹果对于用户隐私方面要求非常严格,如果使用到了先关功能却没有在info.plist中添加键值对一定会崩溃,所以用到了什么记得一定要加上,平时每次用的时候都要现查现去百度,今天抽时间把iOS 10 常用到的隐私权限整理一下,方便日后查找

NSBluetoothPeripheralUsageDescription
需要获取蓝牙权限
NSCalendarsUsageDescription
日历
NSCameraUsageDescription
需要获取您的摄像头信息
NSContactsUsageDescription
需要获取您的通讯录权限
NSHealthShareUsageDescription
健康分享权限
NSHealthUpdateUsageDescription
健康数据更新权限
NSHomeKitUsageDescription
HomeKit权限
NSLocationAlwaysUsageDescription
一直定位权限
NSLocationUsageDescription
定位权限
NSLocationWhenInUseUsageDescription
使用app期间定位权限
NSMicrophoneUsageDescription
需要获取您的麦克风权限
NSPhotoLibraryUsageDescription
需要获取您的相册信息
NSRemindersUsageDescription
提醒事项
NSSiriUsageDescription
需要获取您的Siri权限
NSSpeechRecognitionUsageDescription
语音识别权限
NSVideoSubscriberAccountUsageDescription
AppleTV权限
NSAppleMusicUsageDescription
Add tracks to your music library.
NSMotionUsageDescription
运动与健身权限

程序一进来就判断权限

相册,需要导入#import

[PHPhotoLibrary requestAuthorization:^(PHAuthorizationStatus status) {
        dispatch_async(dispatch_get_main_queue(), ^{
            if (status == PHAuthorizationStatusRestricted || status == PHAuthorizationStatusDenied)
            {
                // 用户拒绝,跳转到自定义提示页面
                NSLog(@"用户拒绝");
            }
            else if (status == PHAuthorizationStatusAuthorized)
            {
                // 用户授权,弹出相册对话框
                NSLog(@"用户同意");
            }
        });
    }];

相机,需要导入#import


    AVAuthorizationStatus status = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo];
    switch (status) {
        case AVAuthorizationStatusNotDetermined:{
            //程序是第一次启动,发起授权许可,不管用户接受还是拒绝,只会弹出一次
            [AVCaptureDevice requestAccessForMediaType:AVMediaTypeVideo completionHandler:^(BOOL granted) {
                if (granted) {
                    //第一次用户接受
                    NSLog(@"用户接受");
                }else{
                    //用户拒绝
                    NSLog(@"用户拒绝");
                }
            }];
            break;
        }
        case AVAuthorizationStatusAuthorized:{
            // 已经开启授权,可继续
            NSLog(@"已开启相机权限");
            break;
        }
        case AVAuthorizationStatusDenied:
        case AVAuthorizationStatusRestricted:
            // 用户已经拒绝过授权,或者相机设备无法访问
            NSLog(@"没有权限");
            break;
        default:
            break;
    }
    

未完

你可能感兴趣的:(iOS 10 隐私权限管理和设置)