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

iOS工程:获取手机相册权限,iOS原生系统弹窗, Privacy隐私政策选择,如何添加系统弹出并修改描述文字

【iOS工程】获取手机相册权限,iOS原生系统弹窗, Privacy隐私政策选择,如何添加系统弹出并修改描述文字

设备/引擎:Mac(11.6)/Mac Mini

开发工具:Xcode(15.0.1)

开发需求:获取手机相册权限,iOS原生系统弹窗, Privacy隐私政策选择,如何添加系统弹出并修改描述文字

最近打包上传游戏时被拒,提示请求权限时未说明用途,修改方法也简单,找到之前的描述进行修改即可。

官方文档给出三个权限弹窗示例如下
1.一般是获取位置信息
在这里插入图片描述
2.需要上传图片时
在这里插入图片描述
3.只需要保存图片到相册
在这里插入图片描述

我们只用到了保存图片的功能,所以是第三种情况。

在info.plist中添加隐私政策并添加描述文字,如下图
在这里插入图片描述

这里就是控制弹窗标题下方小字描述的地方,也是我们需要修改的地方,具体文字需要根据项目需求来做。

保存图片并设置一个回调函数处理保存结果
1.UIImageWriteToSavedPhotosAlbum
此方法是iOS 中用于将图片保存到用户的照片库的函数,代码示例

UIImage *image = [UIImage imageNamed:@"你的图片.png"];
UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), NULL);

其中的didFinishSavingWithError就是处理保存结果的回调函数
2.处理保存结果
之前我们用的UIAlertView,但是这个方法在iOS 8 及更高版本中已经弃用,最新的需要用UIAlertController,示例如下

    // 初始化 UIAlertControllerUIAlertController *alertController;// 判断是否有错误,并显示相应的提示信息if (error != NULL) {alertController = [UIAlertController alertControllerWithTitle:@""message:@"Save error. Please check your settings."preferredStyle:UIAlertControllerStyleAlert];} else {alertController = [UIAlertController alertControllerWithTitle:@""message:@"Image saved to your Photos!"preferredStyle:UIAlertControllerStyleAlert];}// 添加“OK”按钮UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"OK"style:UIAlertActionStyleDefaulthandler:nil];// 将“OK”按钮添加到 alertController[alertController addAction:okAction];// 获取根视图控制器并显示 alertControllerUIViewController *rootViewController = [[UIApplication sharedApplication].delegate window].rootViewController;[viewController presentViewController:alertController animated:YES completion:nil];

这样在保存图片后就会出现提示弹窗,提示用户是否保存成功。

PS:如果你的弹窗出现的是ok不是allow,不用担心,可能是地区、语言的不同造成的,而且你也无法修改系统的按钮描述……

希望能给大家带来帮助!!!有什么问题需要讨论的可以评论私信欢迎讨论~


http://www.mrgr.cn/news/7795.html

相关文章:

  • 如何在 Ubuntu 系统中安装PyCharm集成开发环境?
  • 当前A股平均市盈率
  • 回调函数的使用
  • 如何使用ssm实现公司项目管理系统设计与实现
  • (第三期)书生大模型实战营——OpenXLab部署InternLM2实践——上传模型
  • Vue.js实战教程:如何一步步构建HSK在线学习平台
  • API 的多版本管理,如何在 Apifox 中操作?
  • 【日常记录-Linux】dnf工具
  • React 使用ref属性调用子组件方法(也可以适用于父子传参)
  • FastAPI+React18开发通用后台管理系统用户功能实战
  • staticHeader(静态标头)
  • BUG——GT911上电后中断一直触发
  • 数据集笔记: FourSquare - NYC and Tokyo Check-ins
  • bedtools安装与使用(v2.31.1)生物信息学工具29
  • uniapp+vue3的ifdef实现多端配置客服消息
  • 21.2 Netty聊天会话管理
  • SOMEIP_ETS_061: Sending_two_SOMEIP_Messages_in_a_row
  • 启用 UFW 防火墙后如何打开 80 和 443 端口?
  • 【Leetcode 1805 】 字符串中不同整数的数目—— 双指针
  • 基于Springboot/Vue的企业内部培训考试系统