Flutter iOS 权限申请的采坑之旅

2023-11-08

Flutter项目集成了权限请求框架 permission_handler,在Android端的权限请求没什么问题,iOS端安装之后,跳转到应用设置后找不到相应的权限,权限声明:

应用设置页面:

 

我还以为跟Android端的权限一样,声明了这边就会显示出来然后可以设置,然后又查看了文档和代码,终于发现个问题:

iOS文件夹下有个Profile文件,这个文件以前编译失败然后删除了重新生成了,看文档这里面是要添加代码,所以加入以下代码

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
    target.build_configurations.each do |config|
      config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= [
        '$(inherited)',
        'PERMISSION_MICROPHONE=1',
        'PERMISSION_CAMERA=1',
        'PERMISSION_PHOTOS=1',
      ]
    end
  end
end

 重新运行,可以正常的设置权限了,完事儿,收工!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flutter iOS 权限申请的采坑之旅 的相关文章

随机推荐

  • CentOS安装docker

    Docker这两年大受追捧 风光无二 Docker是一个轻量级容器技术 类似于虚拟机技术 xen kvm VMware virtualbox Docker是直接运行在当前操作系统 Linux 之上 而不是运行在虚拟机中 但是也实现了虚拟机技
  • vmware workstation pro 14 虚拟机无法开启、黑屏的解决方案汇总

    方案1 卸载鲁大师 重启 方案2 管理员命令行 输入netsh winsock reset 重启 方案3 360安全管家修复LSP 重启 方案4 卸载14 0 安装12 0 手动导入虚拟机 转载于 https www cnblogs com
  • 【待解决】【OpenCV图像处理】1.27 模板匹配(Template Match)

    1 相关理论 直观介绍 介绍 模板匹配就是在整个图像区域发现与给定子图像匹配的小块区域 所以模板匹配首先需要一个模板图像T 给定的子图像 另外需要一个待检测的图像 源图像S 工作方法 在带检测图像上 从左到右 从上向下计算模板图像与重叠子图
  • 解决ModuleNotFoundError: No module named ‘pip‘

    pip install U pip 把pip搞没了 报错 环境路径 Scripts pip script py is not present 这个错误可以通过两行简单的cmd命令行语句进行改正修复 python m ensurepip py
  • GAN(生成对抗网络)Matlab代码详解

    这篇博客主要是对GAN网络的代码进行一个详细的讲解 首先是预定义 clear clc clc是清除当前command区域的命令 表示清空 看着舒服些 而clear用于清空环境变量 两者是不同的 装载数据集 train x load Norm
  • access数据库—— 偏移注入&移位溢注&逐字猜解

    目录 前言 正文 0x01 access数据库介绍 0x02 Access union注入 1 猜表 2 猜字段 查数据 0x02 Access 逐字猜解注入 1 猜表 2 猜字段 3 判断长度 4 查询数据 0x03 Access 偏移注
  • File.renameTo()无效-解决

    File renameTo 在windows下运行正常 可正常移动文件 但在linux下就失败了 代码运行正常 但文件没有移动 这种情况下可以使用Files move代替 import java nio file 重命名文件 new Fil
  • vue-cli3实现mockjs数据模拟

    方法一 安装mockjs npm install mockjs save 在src文件夹先新建mock文件夹用于存放json数据 在vue config js文件中做配置 const mockdata require src mock ba
  • 跟着代码随想录练算法 —— 动态规划(JS)

    跟着代码随想录练算法 动态规划 62 不同路径 https leetcode cn problems unique paths 63 不同路径 II https leetcode cn problems unique paths ii 96
  • SQLSTATE=08S01通讯连接失败

    导致此错误的原因是连接池已经耗尽 所以在连接数据库时要记得关闭连接 防止连接用完
  • php swoole 请求tcp服务的两种方式

    第一种方式 可以实现在代码中调用 task connection stream socket client tcp 127 0 0 1 8721 errno errstr task data array route gt demo test
  • x390拆机 升级内存和硬盘_扩容提速必看!笔记本内存和硬盘如何升级?

    在 想给笔记本清灰升级 先了解下如何拆机吧 一文中我们介绍了笔记本的拆机思路以及注意事项 当你可以自行拆下底盖并看到主板之后 就可以进一步对内存和硬盘这两个存储单元进行替换升级了 内存的升级思路 并不是所有笔记本都能升级内存 很多主打便携的
  • 利用服务器搭建自己的 ngrok服务实现内网穿透

    介绍 ngrok 是一个反向代理 通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道 通过 ngrok 服务我们可以在本地调试微信的接口 调试微信和支付宝的支付回调或者临时搭建一个通道用于在外网访问本地部署的项目 准备 一台
  • idea下实现tomcat热部署(修改class等不重启项目)

    在我们的日常开发过程中 常常会涉及到修改class等文件时 需要重启项目 这不仅耗时 而且还耽误我们的进度 实际上 我们用idea时 可以用tomcat实现热部署而无需重启项目 具体设置如下 此处我用的tomcat版本为tomcat8 5
  • BSC 测试链配置

    全流程步骤 安装 MetaMask 钱包 在 MetaMask 钱包中配置 BSC 测试链 向测试链钱包注入测试 BNB USDT DOGE Remix 编写代码 正式发币 1 安装 MetaMask 钱包 下载地址 https metam
  • 二维数组的各种翻转

    一 二维数组正对角线翻转 int length matrix size 按对角交换数字 for int i 1 i lt length i for int j 0 j lt i j swap matrix i j matrix j i 镜像
  • 字节对齐详解

    字节对齐主要是针对结构体而言的 通常编译器会自动对其成员变量进行对齐 以提高数据存取的效率 字节对齐有两种方式 默认对齐方式 指定对齐方式 默认对齐方式 默认对齐方式内存分配满足以下三个条件 结构体第一个成员的地址和结构体的首地址相同 结构
  • 2021年第四届清洁能源与智能电网国际会议(CCESG 2021)EI检索

    2021年第四届清洁能源与智能电网国际会议 CCESG 2021 重要信息 会议网址 www ccesg org 会议时间 2021年9月3 5日 召开地点 匈牙利布达佩斯 截稿时间 2021年8月20日 录用通知 投稿后2周内 收录检索
  • IDEA 关闭/开启引用提示Usages

    版本高一些的IDEA都会有这样变量或者方法都会有这个Usages提示 它会提示你在哪被使用了 个人觉得还是挺好用的 比如下图 通过点击可以看到在哪被使用 包括一些接口 被谁实现 然后今天我发现没有这个使用提示了 正好听到有人反馈说这个提示不
  • Flutter iOS 权限申请的采坑之旅

    Flutter项目集成了权限请求框架 permission handler 在Android端的权限请求没什么问题 iOS端安装之后 跳转到应用设置后找不到相应的权限 权限声明 应用设置页面 我还以为跟Android端的权限一样 声明了这边