问题标签 [uidocument]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
313 浏览

ios5 - 在 UIDocument 中,完成处理程序永远不会在 IOS 5 中被调用,但在 IOS 6 中有效

在 UIDocument 中,完成处理程序永远不会在 IOS 5 中被调用,但在 IOS6 中有效

0 投票
1 回答
1024 浏览

ios - 如何更新 UIDocument 数据

我有一个本地 UIDocument,其中包含将最近查看文章的 NSArray 保存到单个文件中。

我的应用程序是基于 UITabbarController 的,在一个选项卡中有从互联网获取的文章列表,另一个是带有此 UIDocument 支持的 UITableView。一切都加载得很好,问题是 UIDocument 一旦打开就没有更新。当我使用 Core data 和 NSFetchedResultController 时,它可以与那些controllerWillChangeContent. UIDocument 有类似的吗?

0 投票
2 回答
1891 浏览

ios - 重命名 iCloud 文档

问题

到目前为止,我所拥有的是创建新本地文件并删除 iCloud 文件的代码。

是否可以重命名 iCloud 文档以使其保留在 iCloud 中?

GarageBand 可以做到。可以重命名 iCloud 歌曲。重命名完成后,歌曲仍在 iCloud 中。但是 GarageBand 是 Apple 应用程序,因此它可能使用私有 api。

我当前的代码:

更新:仍然没有运气

我发现-setUbiquitous:itemAtURL:destinationURL:error:不能用于重命名文档。

如果我在已经本地的文件上调用 [setUbiquitous:NO itemAtURL:oldLocalURL destinationURL:newLocalURL error:&error],则:

错误域=NSCocoaErrorDomain 代码=512“操作无法完成。(Cocoa 错误 512。)”UserInfo=0x1fdf6730 {NSURL=file://localhost/var/mobile/Applications/4BABA000-B100-49FC-B928-B0F403FC75FF /Documents/LocalDrawing.td2/, NSUnderlyingError=0x20940e80 “操作无法完成。(LibrarianErrorDomain 错误 2 - 无法在未同步的项目上禁用同步。)”}

如果我在已经云文件上调用 [setUbiquitous:YES itemAtURL:oldCloudURL destinationURL:newCloudURL error:&error],则:

错误域=NSCocoaErrorDomain 代码=512“操作无法完成。(Cocoa 错误 512。)”UserInfo=0x208e9820 {NSURL=file://localhost/var/mobile/Library/Mobile%20Documents/22DR89XVRF~com~opcoders ~triangle-draw/Documents/CloudDrawing.td2/, NSUnderlyingError=0x208d45b0 “操作无法完成。(LibrarianErrorDomain 错误 2 - 无法在同步项目上启用同步。)”}

因此-setUbiquitous:itemAtURL:destinationURL:error:不能用于重命名文档。

0 投票
4 回答
5008 浏览

iphone - 将照片导出到 Instagram

我正在尝试使用以下代码将照片从我的应用程序导出到 Instagram:

但它不起作用。它崩溃并出现以下错误:

2013-01-19 20:40:41.948 Ayat[12648:c07] * 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“* -[NSURL initFileURLWithPath:]: nil string parameter”

我不确定我是否正确:

1-将 jpgpath 保存为我拍摄的屏幕截图。

2- 将“dic”文档传递给 Instagram。

0 投票
1 回答
71 浏览

ios - 现有的 UIDocument 不会在 iCloud 上更新

我有一个应用程序在创建、存储、移动和读取新文件到云端和从云端读取新文件时没有问题。我遇到的问题是修改云中已经存在的文档。我打电话

在这两种情况下,都可以确认它会触发并且目标/本地 URL 是正确的。无论出于何种原因,虽然它不会编辑文件,但只能创建一个新文件。我的猜测是我需要为文件编辑做一些不同的事情,但也许我遗漏了一些东西。有人有想法么?谢谢。

0 投票
0 回答
271 浏览

ios - NSMetadataQuery 按更新日期排序不起作用

我正在尝试按更新日期对 NSMetadataQuery 的结果进行排序,但它不起作用。

这是我的代码:

但是我收到的结果肯定不是按更新日期排序的……有什么建议吗?

0 投票
1 回答
2624 浏览

ios - iOS 6 共享像消息,而不像照片(UIActivityViewController 和 UIDocumentInteractionController)

在 iOS 6 中,点击照片应用程序中的操作按钮会显示标准的 UIActivityViewController:

照片中的 UIActivityViewController

从消息中执行相同操作会提供一组不同的选项。在我看来,这就像它使用 UIDocumentInteractionController api 来拉取所有说它们可以处理图像的应用程序。

UIAcitivtyViewController? 来自消息

我的问题是双重的:

  1. 如何进入消息操作菜单?Tumblr 和 Halftone,仅举几例,已经做到了……我似乎找不到文档。

  2. 如何显示消息样式的操作菜单?当我展示 UIActivityViewController 时,它没有这些选项......只有标准集 facebook/twitter/copy/print/save to camera roll/etc。

谢谢!

0 投票
1 回答
1326 浏览

ios - iOS:如何在 iCloud 中合并有冲突的 UIDocument?

我无法理解合并UIDocument存储在 iCloud 中的 2 个或更多冲突版本的选项。在检测到文档冲突后,我目前使用removeOtherVersionsOfItemAtURL简单地保留文档数据的最新版本。但是,我想支持合并有冲突的文档。

我发现的唯一资源和教程提到了用于合并的核心数据和持久存储,示例使用了类似的东西SQLite,我不使用。就我而言,每个文档都是一个单独的文件。

背景:我的应用程序使用自定义NSObject子类(具有相关属性)来存储数据。它们在 a 内进行编码和解码(使用NSCoding+ NSKeyedArchiver/NSKeyedUnarchiverUIDocument。我已经设置了我的应用程序以完全使用 iCloud。它可以使文件无处不在,反之亦然,编辑和删除它们。

请帮助我了解我可以做些什么来合并冲突UIDocument's

0 投票
0 回答
214 浏览

ios - iOS - 如何检查 UIDocument 是否在 iCloud 的其他地方打开?

除了等待冲突发生之外,有没有办法检查是否已使用 iCloud 在其他地方打开了 UIDocument(正在与 iCloud 同步)?

0 投票
2 回答
1463 浏览

cocoa-touch - NSMetadataQuery 找不到 NSFileWrapper 文件夹包,只有文件(但它们在那里)

我有一个奇怪的问题,我似乎无法自己解决。任何帮助或想法表示赞赏。

问题:

  • NSMetadataQuery 找到普通文件(如 test.txt)但没有文件包装器包(myWrapperDocument.pro)
  • 但是,NSFileManager 会在我的 ubiquity 容器中找到所有文件——所以这些文件都在那里,但 NSMetadataQuery 没有找到它们!

事实:

  • 使用 NSFileWrappers 的基于 UIDocument 的应用程序
  • Shared Ubiquity Container(适用于 iOS 和桌面应用程序)
  • 在 Mac OS 上完美运行
  • 在我的 iPad Mini 和我的 iPhone 4S 和 iPhone 3GS 上完美运行(运行 iOS6 和 iOS5)
  • 不适用于我的 iPad1,也不适用于我的大多数 beta 测试设备(运行 iOS5 或 6 的 iPad 1、2 和 3)

到目前为止我做了什么:

  • 学习了 WWDC12 UIDocument 和 iCloud 示例 (CloudNotes.xcodeproj)
  • 在 Apple 的开发论坛和这里学习了几个小时,不幸的是没有任何运气
  • 测试了许多不同的谓词,检查了权利和文档设置(因此系统知道它不是文件夹,而是文档包)
  • 清除和重置 Ubiquity 容器

相关代码:

权利应该是正确的;Info.plist 文档设置(我认为文档类型已正确注册)

ubiquity 容器和 iCloud 文档 url 都很好,这就是我设置查询的方式:

真正奇怪的是,查询只返回一个文件“test.txt”,而其他文件仍未被发现。但是从日志中可以看到,容器有 84 个 .pro 文件(都称为“something.pro”),但查询只找到了一个“test.txt”。

不幸的是,使用 NSFileManager 访问这些文件不是一种选择,因为我似乎无权阅读这些文件。我认为我的容器没有损坏,因为这个问题也发生在我的 beta 测试设备的全新安装上?

我认为这是谓词,但是:

我真的不知道该怎么办了。最奇怪的是,它可以在某些设备上工作,而在其他设备上根本不工作。

我将非常感谢有关此问题的任何提示。非常感谢!