当前位置: 首页 > news >正文

好的企业网站建设上海企业服务云平台

好的企业网站建设,上海企业服务云平台,微信小程序开发用什么语言?,快优吧seo优化引言 用户的照片和视频算是用户最私密的数据之一#xff0c;由于内置的隐私保护功能#xff0c;APP只有在用户明确授权的前提下才能访问用户的照片库。从iOS14 开始#xff0c;PhotoKit进一步增强了用户的隐私控制#xff0c;用户可以选择指定的照片或者视频资源的访问权限…引言 用户的照片和视频算是用户最私密的数据之一由于内置的隐私保护功能APP只有在用户明确授权的前提下才能访问用户的照片库。从iOS14 开始PhotoKit进一步增强了用户的隐私控制用户可以选择指定的照片或者视频资源的访问权限提供给APP。 下面我们就来详细的探讨一下使用用户照片或视频资源时该如何进行权限的申请和管理。 相册权限 首先我们需要确定自己应用需要使用的功能如果只是选择图片或者视频那么可能并不需要我们明确的来请求相册权限系统会帮助我们完成这一点。 而如果需要更高级别的功能那么我们则不得不明确授权APP来访问这些功能。 PHPickerViewController权限 PHPickerViewController我们已经使用过了它是代替UIImagePickerController新的用户媒体资源选择器支持搜索多选照片和视频并提供路程的内容缩放功能。 最主要的一点是由于它是系统在单独的进程中管理其生命周期因此默认情况下它是私有的。用户在使用它选择照片或者视频时无需明确授权这无疑改善了用户与应用交互是的整体体验几乎所有的用户都会对授权的弹窗持谨慎和怀疑的态度。 objc func showPhotoPicker() {var configuration PHPickerConfiguration(photoLibrary: PHPhotoLibrary.shared())configuration.selectionLimit 9let photoPicker PHPickerViewController(configuration: configuration)photoPicker.delegate selfself.present(photoPicker, animated: true, completion: nil)}func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) {picker.dismiss(animated: true, completion: nil)}无需任何权限相关的申请即可调起照片和视频的选择列表 高级功能的权限 权限描述 如果我们的应用需要使用PhotoKit提供的其它高级功能比如检索资源更新图库创建相册等等那么应用必须需要得到用户的明确授权才可以访问这些功能。 我们需要提供一句文案用来描述我们的APP需要访问这些权限来做什么。当开始申请权限时系统的权限申请弹窗中会将这条文案展示给用户。 如果APP访问了这些权限而没有添加任何说明那么在请求权限时将会崩溃。 针对不同的功能我们需要在info.plist的文件中添加相应的key来说明你的应用程序为什么需要使用这些权限。 NSPhotoLibraryAddUsageDescription如果我们的APP只需要添加内容到照片库比如保存照片或者视频而不需要读取那么我们只需要添加这个键并解释原因。 NSPhotoLibraryUsageDescription如果我们的APP需要读取和写入照片库。比如查看照片 选择照片选择照片删除照片那么我们就需要在Info.plist文件中添加这个键并且向用户解释为什么我们的应用程序需要这些权限。 如果我们有需要读取又需要添加俺么info.pist文件看起来可能是这样 keyNSPhotoLibraryUsageDescription/key string我们需要访问您的照片库以便选择和分享图片。/stringkeyNSPhotoLibraryAddUsageDescription/key string我们需要将图片保存到您的照片库。/string请求授权 使用PHPhotoLibrary来检查APP的当前授权状态可以根据权限类型来获取指定权限的状态。 let status PHPhotoLibrary.authorizationStatus(for: .readWrite) 上述代码会返回一个PHAuthorizationStatus的值它表示应用针对指定授权的状态。 PHAuthorizationStatus.notDetermined标识用户从没有进行过授权页面的选项选择。 当我们的APP首次进行权限访问时系统会自动弹出一个提示弹窗来提示用户授权弹窗内的文案就是我们在对应的key中设置的描述文案。 请求用户权限最合理的时机就是当用户将要使用相册相关功能时再进行请求这样可以让用户更好地了解我们为什么需要请求访问这个权限。 我们还可以通过编写代码的方式来请求授权这样我们就可以控制提示的时间并且确定用户的响应结果。 /// 查看并获取相册权限/// - Parameter completion: 回调func requestPhotoLibraryAuthorization(completion: escaping (Bool) - Void) {PHPhotoLibrary.requestAuthorization(for: .readWrite) { status inswitch status {case .notDetermined:// 用户尚未确定此应用程序的访问权限。completion(false)case .restricted:// 系统限制了此应用程序的访问权限。completion(false)case .denied:// 用户明确拒绝了此应用程序的访问权限。completion(false)case .authorized:// 用户授权此应用程序访问照片数据。completion(true)case .limited:// 用户授权此应用程序访问有限的照片数据。completion(true)unknown default:fatalError()}}}用户选择了授权或者拒绝授权之后系统会记录下用户的选择无论用户选择了什么以后系统都不会再次出现弹窗让用户重新选择授权。 不过用户可以到设置中进行更改这时候就需要我们提供交互友好的提示弹窗来提醒用户如何修改权限。 Limited Library 在之前的版本中对于相册权限的申请用户只能选择允许或者是拒绝。在iOS14开始用户可以指定授权照片或者视频允许应用访问部分资源系统弹窗样式如下 除了拒绝和允许之外添加了一个限制访问的选项用户点击该选项之后会打开一个受限库管理页面。此页面允许用户选择要与的应用共享的资源我们的APP也就只能与这些用户选择出来的资源进行交互。 我们的APP无论是与整个照片库交互还是与受限的照片库交互PhotoKit的使用方法基本都是相同的但是需要注意以下两点 如果是受限的访问权限那么当我们使用PHAssetCreationRequest创建照片或者视频时系统会自动将这些新创建的内容添加到用户允许访问的列表中。如果是受限的访问放权那么在APP中将不允许创建新的用户相册也不允许获取用户的现有相册。 Limited Library 选择页面 在默认情况下系统会在应用声明周期内自动提示用户更新其有限库一次。 但是这通常满足不了用户交互用户可能需要不断的向可选择的受限库中添加新的照片或者视频提供给APP进行交互。 这样我们就需要在适当的时机使用代码的方式来吊起用户用户受限资源的选择页面让用户添加新的资源。 想要实现这个功能需要修改一下Info.plist文件 并添加下面的代码 func showLimitedLibrarySelectPicker(viewController:UIViewController) {PHPhotoLibrary.shared().presentLimitedLibraryPicker(from: viewController)}调用该方法就可以再次吊起受限资源的选择页面将新的照片和视频的访问权限授予APP。 iOS15之后该方法添加了一个回调返回了用户选择资源的本地表示字符列表。 func showLimitedLibrarySelectPicker(viewController:UIViewController) {PHPhotoLibrary.shared().presentLimitedLibraryPicker(from: viewController) { (results) in}}结语 通过这篇博客我们深入探讨了 PhotoKit 在 iOS 中的权限管理。从基础的权限请求到高级功能的使用以及如何应对受限权限我们都做了详细介绍。在开发应用时理解并合理处理这些权限不仅能够保障用户的隐私和数据安全还能提升用户的使用体验。希望这篇文章能够帮助你更好地掌握 PhotoKit 的权限设置让你的应用在处理照片和视频时更加得心应手。如果你有任何问题或建议欢迎留言讨论。
http://www.w-s-a.com/news/122118/

相关文章:

  • 企业网站域名服务器国外html响应式网站
  • 东莞网站建设策划企业网站推广策划方法
  • 网站的图片怎么制作WordPress交互式网站
  • pc网站增加手机站什么专业学网页设计制作
  • 婚庆公司网站模板wordpress用什么框架
  • 高校网站建设的时效性长沙市网站建设
  • 合肥网站建设市场四川建设网官网住房和城乡厅官网官方
  • 天行健君子以自强不息网站建设江西网站做的好的企业文化
  • 建网站内容谷歌搜索引擎优化
  • 网站建设与管理案例教程第三版答案网站建设策划书范文六篇精选
  • 建设工程项目在哪个网站查询实时网站推广的最终目的是
  • 个人网站可以做淘客网站设置的参数
  • 自适应网站制作公司做室内设计通常上的网站
  • 网站建设项目采购公告建设网站公司建网页
  • 自己做网站怎么推广网站建设应该考虑哪些方面
  • 我做的网站手机上不了wordpress插件整站搬家
  • 河南省和建设厅网站首页西安找建网站公司
  • 网页设计基础代码网站进出成都最新通知
  • 如何创建网站乐清网络科技有限公司
  • 沈阳市网站制作艺术字体logo设计生成器
  • 网站设计常用软件都有哪些中国建设银行官方招聘网站
  • 证券投资网站建设视频直播怎么赚钱的
  • 建设酒店网站ppt模板下载郑州小程序设计外包
  • 网站建设自我总结google推广公司
  • 安全网站建设情况wordpress 评论表单
  • 网站建设发言材料个人网站推广软件
  • php建站软件哪个好南京哪家做网站好
  • 排名好的手机网站建设番禺网站建设专家
  • 番禺怎么读百度有专做优化的没
  • 网站开发中应注意哪些问题网络营销的主要特点