关于iOS14 访问相册权限问题
iOS14选择相册适配问题。
在iOS14之后新增了
Limited Photo Library Access
模式,在授权弹窗中增加了 Select Photo 选项(如图1,就是第一个选项 ‘选择照片...’)。
选中之后就跳转到系统的PHPickerViewController
进行选择图片(如图2)。
如果不适配会导致一些问题。
图1 | 图2 |
---|---|
图1.jpg
|
图2.jpg
|
具体解决方案,更新API。然后在调用相机的时候,判断一下是否是limited。如果是的话,我们就给一个提示(让他去更改权限提示),并且可以让用户选择重新选择可用的照片,具体代码如下:
在iOS 14新增两个API,要更新一下
/// accessLevel 我们选择 readWrite 就行了@available(iOS 14, *) //获取当前相册权限 accessLevel是权限等级open class func authorizationStatus(for accessLevel: PHAccessLevel) -> PHAuthorizationStatus@available(iOS 14, *) //发起相册权限请求 accessLevel是权限等级open class func requestAuthorization(for accessLevel: PHAccessLevel, handler: @escaping (PHAuthorizationStatus) -> Void)
然后在你的相册中添加下面判断代码
var authorizationStatus = PHPhotoLibrary.authorizationStatus()if #available(iOS 14, *) {authorizationStatus = PHPhotoLibrary.authorizationStatus(for: .readWrite)}if #available(iOS 14, *) {if authorizationStatus == .limited {//这里可以添加提示 。代码我就不放了如图3//还可以添加UIAlertController选择弹框,点击 选择更多照片... 调用下面代码。如图4//[[PHPhotoLibrary sharedPhotoLibrary] presentLimitedLibraryPickerFromViewController:self];}}
点击 选择更多照片... 调用下面代码。如图4[[PHPhotoLibrary sharedPhotoLibrary] presentLimitedLibraryPickerFromViewController:self];
图3 | 图4 |
---|---|
图3
|
图4
|
假如你就简单的改变一个头像,推荐PHPickerViewController
,这iOS14之后官方推荐的。可选images,videos,livePhotos
等
if #available(iOS 14.0, *) {var configuration = PHPickerConfiguration.init()configuration.filter = PHPickerFilter.any(of: [PHPickerFilter.images,PHPickerFilter.videos,PHPickerFilter.livePhotos])configuration.selectionLimit = 1let picker = PHPickerViewController.init(configuration: configuration)picker.delegate = selfpicker.view.backgroundColor = UIColor.bluepicker.modalPresentationStyle = .fullScreenself.present(picker, animated: true) {}}//MARK: PHPickerViewControllerDelegatefunc picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) {if results.count == 0 {return}let itemProvider = results.first?.itemProviderif itemProvider?.canLoadObject(ofClass: UIImage.classForCoder() as! NSItemProviderReading.Type) == true {itemProvider?.loadObject(ofClass: UIImage.classForCoder() as! NSItemProviderReading.Type, completionHandler: { object, error inprint(object as Any)})}//在回调中调用消失方法picker.dismiss(animated: true) {}}
http://www.taodudu.cc/news/show-2497807.html
相关文章:
- 解决iOS8下ALAssetsLibrary创建相册的bug
- SpringBoot个人博客项目——相册模块开发(一)
- 神奇的魔法师——教你在手机上如何一键创建相册
- 在手机相册(ios设备相册)中创建相册
- iOS创建相册
- wordpress相册_如何在WordPress中使用相册创建相册
- iOS创建自定义相册
- 创建相册,批量删除,图片预览,上传图片
- 极域电子教室一直显示正在连接教师机解决方法
- 极域电子教室怎么修改学生端频道号
- 怎么解除计算机教室的游戏限制,多妙招解除极域电子教室的控制权限
- 极域教师端和学生端链接不上,出现这种问题怎么解决
- 极域电子教室学生端全屏广播的破解及编程处理(附静态库)
- 关闭极域电子教室文档
- 关闭极域电子教室学生端的各种方法
- 运用极域电子教室控制其他学生端(不需要教师端)
- 计算机电子极域控制,极域电子教室的反控制实现【无需教师端】
- 昵图网学校计算机教室制度,极域电子教室教师端使用说明-20210408211401.docx-原创力文档...
- 极域电子教室师生端连接不上怎么解决
- [原]极域电子教室3个没被发现的bug(V6 2007)
- 极域电子书包教师端程序启动介绍
- 网页前端培训(JavaScript)
- 互联网公司招聘--奇虎360-数据分析师--2017年笔试题
- 17-[案例1]奇虎导航案例
- 360奇虎php,phpTrace:奇虎360开源的PHP脚本跟踪分析工具
- 奇虎360 php t5级别,奇虎360凭什么估值3800亿?核心价值只是他而已!
- 2016奇虎360研发工程师内推笔试编程题 - 题解
- 2019年8月15日奇虎360测评与笔试分享
- 奇虎360面经:测试
- 奇虎360笔试题 挑选镇长
关于iOS14 访问相册权限问题相关推荐
- android 调用相册权限,采坑之Android手机访问相册权限问题
问题描述 Android端APP 在6.0以上系统无法访问相册和拍照 经过 1.项目是一个后期接手的项目,在早期开发版本中没有注册相机权限,使用拍照时直接调用相机没有做相机权限检测,部分国产手机(小米 ...
- iOS11 访问相册、相机权限
一. iOS11之前:访问相册和存储照片到相册(读写权限),需要用户授权,需要添加NSPhotoLibraryUsageDescription. 二.iOS11之后:默认开启访问相册权限(读权限),无 ...
- android访问相册、拍照
在访问相册的时候由于是跨进程访问相册资源,所以必须具备ContentProvider的基本知识,使用相机的时候需要指定照片存储位置,需要具备FileProvider的原理和使用 由于访问相册和使用相机 ...
- uniapp调起访问本地系统相册权限的提示
首先,uniapp的api里有个uni.saveImageToPhotosAlbum(obj)把图片保存到本地 手机设置相册权限为"全部允许访问",默认是成功回调.相册设置&quo ...
- iOS 相册权限绕过漏洞
在 App Store 上有一款名叫 "时间规划局" 的应用可以在未获取相册权限的情况下读取照片.可能是 App 调用了苹果的私有库,绕过了系统的授权机制. 在 iOS 12.1. ...
- iOS上传头像, 相册权限,相册权限,拍照上传,相册选择图片,拍照页面语言设置,保存到相册...
2019独角兽企业重金招聘Python工程师标准>>> 1. 权限 在打开相机拍照或者打开相册选择图片之前, 有必要先判断先是否有权限, 如果没有权限应该给个提示, 让用户自己去设置 ...
- android qq空间相册,QQ空间Android3.3发布 新增空间、相册权限设置
现代社会人们越来越注重对自己隐私的保护,即使在虚拟环境中,人们还是会尽可能的为自己划出一片私密区域.近日,最新升级推出的QQ空间Android3.3版新增空间权限以及相册权限的设置,让用户随时设置权限 ...
- iOS-iOS 11图片保存相册权限 NSPhotoLibraryAddUsageDescription
一.iOS 11图片保存相册权限 NSPhotoLibraryAddUsageDescription NSPhotoLibraryAddUsageDescription是iOS 11新推出的隐私规则, ...
- Android7.0调用系统相机拍照、访问相册问题。
关于Android7.0调用系统相机拍照.访问相册的一些问题: 在Android6.0中Google提出了动态申请权限的Api,调用相机拍照,访问SDcard等操作都需要先申请对应的权限如下: < ...
- ios提交APP审核,因为需要访问相机权限被拒绝
2018年8月26日 上午5:44 发件人 Apple 5. 1.1 Legal: Privacy - Data Collection and Storage Guideline 5.1.1 - Le ...
最新文章
- Git中级用户的25个提示
- 谷歌取得量子计算突破:200秒完成经典计算机10000年计算任务
- C语言如何使用函数交换两个变量的值
- go-zero:开箱即用的微服务框架
- 在.Net中,如何创建一个后台执行的进程?
- python编写四位数验证码
- 怎么用计算机算立方数,计算器的使用方法
- 【Python】Matplotlib使用Cursor实现UI定位
- DPDK内存篇(一): 基本概念
- flutter 如何判断在哪个页面_如何判断初中英语辅导哪个更好呢?
- oracle通过DBlink连接mysql
- Python 导入requests报错No module named requests
- HBase简介及使用
- 处理键盘事件 禁止后退键(Backspace)密码或单行、多行文本框除外
- CCF CSP历年题解(python)
- MATLAB怎么求非线性度误差,用Matlab进行最小二乘法线性拟合(求传感器非线性误差、灵敏度)...
- Python实现穷举破解WiFi密码
- scala发送邮件设置参数
- 自动控制理论开环与闭环思考(从飞行控制角度)
- Linux性能测试工具之filesystem(三)