Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Delphi FMX应用程序打开公共iOS文件_Ios_File_Delphi_Firemonkey - Fatal编程技术网

使用Delphi FMX应用程序打开公共iOS文件

使用Delphi FMX应用程序打开公共iOS文件,ios,file,delphi,firemonkey,Ios,File,Delphi,Firemonkey,我正在开发一个文档查看器应用程序,应该能够处理自定义文件类型。我已经使用我的info.plist中的CFBundleDocumentTypes成功阻止我的应用程序作为文件类型的默认处理程序。 这使我能够从资源管理器中选择一个文件,并使用文件共享选项中的“复制到…”功能在我的应用程序中打开它。 该功能的行为对我来说并不理想,因为它对新用户来说不是很直观。 此外,文件(如名称所述)总是复制到我的应用程序的内部目录,这会更改它们的名称,并在多次打开同一文件时浪费大量空间。 将LSSupportsOpe

我正在开发一个文档查看器应用程序,应该能够处理自定义文件类型。我已经使用我的info.plist中的
CFBundleDocumentTypes
成功阻止我的应用程序作为文件类型的默认处理程序。
这使我能够从资源管理器中选择一个文件,并使用文件共享选项中的“复制到…”功能在我的应用程序中打开它。
该功能的行为对我来说并不理想,因为它对新用户来说不是很直观。 此外,文件(如名称所述)总是复制到我的应用程序的内部目录,这会更改它们的名称,并在多次打开同一文件时浪费大量空间。
LSSupportsOpeningDocumentsInPlace
添加到info.plist会将“复制到…”更改为“在…”中打开”,只需点击文件也会触发此操作。在iOS端,这正是我想要的,但现在我的应用程序接收的URL是安全范围的,这意味着我不能像访问自己的文件一样访问该文件。
苹果开发者文档建议使用
startAccessingSecurityScopedResource()
或使用
UIDocument
类请求访问。
这两者似乎都不起作用,我在
iOSAPI
UIDocument
中找不到任何
startAccessingSecurityScopedResource()
的实现,因为它是安全范围的,无法访问,所以我无法从打开应用程序时传递的字符串“Url”创建
NSUrl

是否有其他方法可以使用Delphi访问安全范围内的资源,或者在查看
iOSAPI
时是否遗漏了一些内容?

我正在使用以下版本:
德尔福10.4悉尼补丁3
平台助手服务器21.0
macOS Catalina 10.15.6
Xcode 11.7

iPhone7和iOS 13.7

你的问题最好更具体一些,尽量把问题最小化。你的问题最好更具体一些,尽量把问题最小化