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

本文主要是介绍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,不用担心,可能是地区、语言的不同造成的,而且你也无法修改系统的按钮描述……

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

这篇关于iOS工程:获取手机相册权限,iOS原生系统弹窗, Privacy隐私政策选择,如何添加系统弹出并修改描述文字的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1104798

相关文章

springboot的controller中如何获取applicatim.yml的配置值

《springboot的controller中如何获取applicatim.yml的配置值》本文介绍了在SpringBoot的Controller中获取application.yml配置值的四种方式,... 目录1. 使用@Value注解(最常用)application.yml 配置Controller 中

利用Python在万圣节实现比心弹窗告白代码

《利用Python在万圣节实现比心弹窗告白代码》:本文主要介绍关于利用Python在万圣节实现比心弹窗告白代码的相关资料,每个弹窗会显示一条温馨提示,程序通过参数方程绘制爱心形状,并使用多线程技术... 目录前言效果预览要点1. 爱心曲线方程2. 显示温馨弹窗函数(详细拆解)2.1 函数定义和延迟机制2.2

kingbase修改权限实现方式

《kingbase修改权限实现方式》该文章详细介绍了如何在数据库中创建用户并赋予其相应的权限,包括创建用户、回收默认权限、创建数据库、赋权数据库权限、创建只读用户以及回收权限等步骤... 目录前言使用步骤总结前言创建用户后对数据库对象的读写权限进行修改使用步骤1、创建用户create user cs

C++简单日志系统实现代码示例

《C++简单日志系统实现代码示例》日志系统是成熟软件中的一个重要组成部分,其记录软件的使用和运行行为,方便事后进行故障分析、数据统计等,:本文主要介绍C++简单日志系统实现的相关资料,文中通过代码... 目录前言Util.hppLevel.hppLogMsg.hppFormat.hppSink.hppBuf

linux实现对.jar文件的配置文件进行修改

《linux实现对.jar文件的配置文件进行修改》文章讲述了如何使用Linux系统修改.jar文件的配置文件,包括进入文件夹、编辑文件、保存并退出编辑器,以及重新启动项目... 目录linux对.jar文件的配置文件进行修改第一步第二步 第三步第四步总结linux对.jar文件的配置文件进行修改第一步进

golang实现nacos获取配置和服务注册-支持集群详解

《golang实现nacos获取配置和服务注册-支持集群详解》文章介绍了如何在Go语言中使用Nacos获取配置和服务注册,支持集群初始化,客户端结构体中的IpAddresses可以配置多个地址,新客户... 目录golang nacos获取配置和服务注册-支持集群初始化客户端可选参数配置new一个客户端 支

MyBatis Plus中执行原生SQL语句方法常见方案

《MyBatisPlus中执行原生SQL语句方法常见方案》MyBatisPlus提供了多种执行原生SQL语句的方法,包括使用SqlRunner工具类、@Select注解和XML映射文件,每种方法都有... 目录 如何使用这些方法1. 使用 SqlRunner 工具类2. 使用 @Select 注解3. 使用

Python实现Word文档自动化的操作大全(批量生成、模板填充与内容修改)

《Python实现Word文档自动化的操作大全(批量生成、模板填充与内容修改)》在职场中,Word文档是公认的好伙伴,但你有没有被它折磨过?批量生成合同、制作报告以及发放证书/通知等等,这些重复、低效... 目录重复性文档制作,手动填充模板,效率低下还易错1.python-docx入门:Word文档的“瑞士

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信