无法在实际设备上使用 .fileImporter 打开文件

2023-12-22

当我测试 iOS 14 beta 时,此功能在部署在真实设备上时可以工作,但现在在生产中它只能在模拟器上工作。 iOS 14 有什么变化吗?我收到以下错误:

FilePickerTest[15486:5885508] [AXRuntimeCommon]未知客户端:FilePickerTest

文件“16010282771_20190702_23_38.csv”无法打开,因为您无权查看它。

我是否需要添加一项设置才能授予我的应用程序访问该文件的权限?

import SwiftUI

struct ContentView: View {
    @State private var openFile = false
    @StateObject var doc = ViewModel()
    
    var body: some View {
        VStack {
            Text("Tap to pick a csv file")
                .padding()
                .onTapGesture(perform: {
                    openFile.toggle()
                })
        }
        .fileImporter(isPresented: $openFile, allowedContentTypes: [.commaSeparatedText]) { (res) in
            do {
                let fileUrl = try res.get()
                print(fileUrl)
                doc.viewFile(fileUrl: fileUrl)
            } catch {
                print("Error reading file")
                print(error.localizedDescription)
            }
        }
        
    }
}

import SwiftUI

class ViewModel: ObservableObject {
    
    var readString = ""
    func viewFile(fileUrl: URL) {
        do {
            readString = try String(contentsOf: fileUrl)
        } catch {
            print("Error reading file")
            print(error.localizedDescription)
        }
        
        print("File contents: \(readString)")
    }
}

添加 fileUrl.startAccessingSecurityScopedResource() 前 doc.viewFile(文件地址: 文件地址)

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

无法在实际设备上使用 .fileImporter 打开文件 的相关文章

随机推荐

  • EventLog WriteEntry不写入指定日志,而是写入应用程序日志

    我有一个应用程序 我想将条目写入事件日志 记录器通过 MEF 实例化 我创建了一个派生类 以便能够在使用它之前执行日志初始化 我的代码如下 public class WinEventLog EventLog ILogger private
  • 以编程方式单击 Extjs 中的按钮

    我在 Extjs 应用程序中使用 MVC 架构 我有一个简单的按钮 它看起来像 xtype button id searchButton margin 5 0 text Search 我如何从这个视图中以编程方式按下它按钮 我认为从视图中模
  • 在 PHP MySQL 查询中获取外键对象的简洁方法

    我使用以下代码从 MySQL 数据库获取图书对象 q pdo gt prepare SELECT book id id book title title book slug slug FROM book WHERE book id id q
  • 这在 JSON 中可能吗?

    我目前正在使用 json net 我知道如何反序列化 json 数据以及如何与我们的类进行映射 现在我急切地想请教一些问题 假设我的 jsonstrings 是 attributes color Brown condition Used c
  • 如何将div的内容居中[重复]

    这个问题在这里已经有答案了 我有一个非常简单的问题 但我似乎无法解决它 我在 div 中有一个表格 它是主要元素 现在我在表格内有一个 td 标签 其宽度和高度设置为 iPhone 屏幕尺寸 现在我基本上想将该表格及其 td 单元格放在 d
  • C# 中 |= 和 &= 赋值运算符的短路

    我知道 and 在 C 中被定义为短路运算符 这种行为是由语言规范保证的 但是 and 也短路 例如 private bool IsEven int n return n 2 0 private void Main var numbers
  • 如何为 ajax 表单提交设置 Google Analytics Goal

    我有一个通过 ajax 提交的联系表单 成功提交后 会显示一条感谢 成功消息 此外 我还在我的 Google Analytics 分析 帐户中设置了一个目标 目标完成 URL 用于访问感谢页面 本页面不存在 关于如何通过此方法设置跟踪成功的
  • Tomcat - CATALINA_BASE 和 CATALINA_HOME 变量

    我在同一台服务器 Linux 上运行多个 tomcat 6 实例 并且它按预期工作 我试图找出关于设置的标准做法是什么CATALINA HOME and CATALINA BASE变量 在我的 tomcat 安装中 我进行了设置CATALI
  • 使用 ReentrantLocks 的资源管理器

    我正在尝试实现一个资源处理程序类 它将资源 字符串 存储在数组中 分配给多个客户端 这些客户端可以尝试获取一组资源的锁 并通过 lock 方法给出的 ID 解锁它们 我正在尝试使用公平的 ReentrantReadWriteLock s 每
  • Excel:创建一个包含 n 倍常数的数组

    我已经环顾了一段时间 但找不到我的问题的答案 在Excel中 我可以使用什么紧凑的公式来创建由重复的单个元素组成的数组n时间 地点n是一个输入 可能是硬编码的 例如 看起来像这样的东西 下面的公式does not工作但给出了我正在寻找的东西
  • scala为外部范围创建val

    考虑以下对象 object A def setX x Int val x1 x def getx x1 如果我在 setX 中创建 val x1 那么它的范围将是方法 setX 我真正想做的是在方法外部创建 val 并在方法内部赋值 不使用
  • 如何在 Tomcat 6 上手动部署 Web 服务?

    我正在学习如何使用 Java 开发 SOAP Web 服务 到目前为止 我一直在关注这个优秀的教程 http web archive org web 20120626005333 http java sun com developer te
  • 仅当 minifyEnabled 且使用 LifeCycle v 2.1.0 时,创建 ViewModel 时应用程序崩溃

    我的应用程序在启动时崩溃LinkageError使用创建视图模型时lazy 崩溃仅发生在以下情况 minifyEnabled被设定为true在 build gradle 中 并且 I use 版本 2 1 0生命周期组件 它可以很好地与li
  • 获取哪些用户分享了帖子

    使用图形API 当我查询用户或页面的提要时 有一些用户已分享的帖子 我可以在一个实体的数据部分中看到有关分享数量的数据 shares count 2 在浏览 Facebook 的帖子时 当我点击代表 显示共享 的图标时 会弹出一些内容 让我
  • IOS 到 PHP POST 参数? [复制]

    这个问题在这里已经有答案了 我正在尝试创建 联系我们 ViewController 它可以发送电子邮件 但我不想使用MFMailComposeViewController因为我想设置接收消息的电子邮件地址 So 我尝试创建一个视图控制器它从
  • HTTPException:网址的 SSL 证书无效和/或丢失:https://accounts.google.com/o/oauth2/token

    当我通过 Google AppEngine 调用 Google Earth Engine GEE Python API 时 它会抛出一个 HTTPException 其中显示 HTTPException url 的 SSL 证书无效和 或丢
  • 为什么 NgModule 导入的顺序很重要?

    我一直在浏览 Angular 教程以及 HTTP 部分https angular io docs ts latest tutorial toh pt6 html https angular io docs ts latest tutoria
  • R 提示符下的时间戳可能吗? [复制]

    这个问题在这里已经有答案了 可能的重复 R 在R命令行中显示时钟 https stackoverflow com questions 4222476 r display a time clock in the r command line
  • F#签名文件错误

    我试图使用 fsi 文件来允许在单独的文件中相互递归类 但我的 fsi 文件未编译 下面是一个演示该问题的简单示例 文件program fs module mod1 type first zero 0 文件File1 fs module m
  • 无法在实际设备上使用 .fileImporter 打开文件

    当我测试 iOS 14 beta 时 此功能在部署在真实设备上时可以工作 但现在在生产中它只能在模拟器上工作 iOS 14 有什么变化吗 我收到以下错误 FilePickerTest 15486 5885508 AXRuntimeCommo