Xcode运行真机开启硬件支持权限设置
-
打开项目中的info.plist文件进行编辑
> 其中一个
<key>********</key>
<string>******</string>
> 为一个组合
-
设置代码如下:
<!-- 相册 --> <key>NSPhotoLibraryUsageDescription</key> <string>App需要您的同意,才能访问相册</string> <!-- 相机 --> <key>NSCameraUsageDescription</key> <string>App需要您的同意,才能访问相机</string> <!-- 麦克风 --> <key>NSMicrophoneUsageDescription</key> <string>App需要您的同意,才能访问麦克风</string> <!-- 位置 --> <key>NSLocationUsageDescription</key> <string>App需要您的同意,才能访问位置</string> <!-- 在使用期间访问位置 --> <key>NSLocationWhenInUseUsageDescription</key> <string>App需要您的同意,才能在使用期间访问位置</string> <!-- 始终访问位置 --> <key>NSLocationAlwaysUsageDescription</key> <string>App需要您的同意,才能始终访问位置</string> <!-- 日历 --> <key>NSCalendarsUsageDescription</key> <string>App需要您的同意,才能访问日历</string> <!-- 提醒事项 --> <key>NSRemindersUsageDescription</key> <string>App需要您的同意,才能访问提醒事项</string> <!-- 运动与健身 --> <key>NSMotionUsageDescription</key> <string>App需要您的同意,才能访问运动与健身</string> <!-- 健康更新 --> <key>NSHealthUpdateUsageDescription</key> <string>App需要您的同意,才能访问健康更新 </string> <!-- 健康分享 --> <key>NSHealthShareUsageDescription</key> <string>App需要您的同意,才能访问健康分享</string> <!-- 蓝牙 --> <key>NSBluetoothPeripheralUsageDescription</key> <string>App需要您的同意,才能访问蓝牙</string> <!-- 媒体资料库 --> <key>NSAppleMusicUsageDescription</key> <string>App需要您的同意,才能访问媒体资料库</string>
-
调用代码如下:
#import<AVFoundation/AVCaptureDevice.h> #import <AVFoundation/AVMediaFormat.h> #import<AssetsLibrary/AssetsLibrary.h> #import<CoreLocation/CoreLocation.h> //相机权限 AVAuthorizationStatus authStatus = [AVCaptureDeviceauthorizationStatusForMediaType:AVMediaTypeVideo]; if (authStatus ==AVAuthorizationStatusRestricted ||//此应用程序没有被授权访问的照片数据。可能是家长控制权限 authStatus ==AVAuthorizationStatusDenied) //用户已经明确否认了这一照片数据的应用程序访问 { // 无权限 引导去开启 NSURL *url = [NSURLURLWithString:UIApplicationOpenSettingsURLString]; if ([[UIApplicationsharedApplication]canOpenURL:url]) { [[UIApplicationsharedApplication]openURL:url]; } } //相册权限 ALAuthorizationStatus author = [ALAssetsLibraryauthorizationStatus]; if (author ==kCLAuthorizationStatusRestricted || author ==kCLAuthorizationStatusDenied){ //无权限 引导去开启 NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString]; if ([[UIApplication sharedApplication] canOpenURL:url]) { [[UIApplication sharedApplication] openURL:url]; } }