问题标签 [icloud]

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 回答
1309 浏览

ios - 带有 NSMetadataQueryUbiquitousDocumentsScope 的 iCloud 查询无法更新

我在两个应用程序(一个 iOS,另一个 Mac)之间进行了工作设置,它们都将文件放置在 ubiquity 容器中,并使用 NSMetadataQuery 监视该容器。在大多数情况下,查询几乎会在目录中的文件被 setUbiquitous:YES 后立即更新。

然而,关于另一个讨厌的 iCloud 错误,它可能导致容器在同步时完全清空(自动,而不是由应用程序或用户),一旦应用程序之间的“干净设置”被所述错误损坏,查询 - 在仅限 iPhone 端 - 不再更新。

如果我将文件添加到 iPhone 上的容器中,Mac 会立即看到它们。但是如果我在 Mac 端添加文件,iPhone 永远不会更新。如果我使用计时器和文件管理器来扫描容器,我可以确认文件在内容中列出。这是不识别它们的查询。

虽然我不认为这是代码问题,但我会在此处包含它。我认为这是一个“iCloud 是测试版(充其量)”问题,我想知道是否有人可以回答这个问题:由于退出并重新启动应用程序确实会正确导致查询更新,有谁知道如何强制NSMetadataQuery 到更新? 删除它并制作另一个没有任何作用。

这是查询代码(我告诉你它正确地报告给任何 NSNotification 监视器):

这是轮询代码(我告诉你它说文件夹中有文件):

这是我观看查询的地方(我得到结果,除非系统已被冲洗):

现在,你可能会说“你说它已经被水洗了,为什么不重新开始呢?” 我回答 - 我不能告诉用户他们需要从两台设备上删除这两个应用程序,关闭 iCloud,从两台计算机上的“文档和数据”中删除该应用程序,重新下载这两个应用程序,然后“这个问题将会发生随时再次”。我正在尝试在应用程序中构建主要冗余。

谢谢!

0 投票
3 回答
6391 浏览

iphone - 如何一起使用 NSUbiquitousKeyValueStore 和 NSUserDefaults

文档不清楚如何使用NSUbiquitousKeyValueStore边缘情况。

如果我想设置一个值,我知道我应该为两者设置一个值NSUserDefaultsNSUbiquitousKeyValueStore因为 iCloud 可以被禁用。但是,[NSUbiquitousKeyValueStore defaultStore]即使禁用了 iCloud(在 Mac OS 上测试),在我的测试中也会返回一个有效对象。

此外,据我了解,如果启用了 iCloud,则NSUbiquitousKeyValueStore的值将存储到磁盘(并且可以离线使用)。如果您确定您的数据少于 64KB,那么使用 NSUserDefaults 的原因是什么?

0 投票
1 回答
1289 浏览

iphone - 如何在 iCloud 中处理 sqlite

我的应用程序中有一个Sample.sqlite数据库,您能帮我了解如何将我的应用程序的 Sample.sqlite 保存在 iCloud 中,以及如何从 iCloud 下载该 SQLite 文件并在我们的应用程序中处理

感谢您的任何建议。


我正在尝试实现您在 iCloud 中保存封闭数据库的想法,但它返回以下错误

错误域 = NSPOSIXErrorDomain 代码 = 1“操作无法完成。操作不允许” UserInfo = 0x299bb0 {NSDescription =无法重命名'/var/mobile/Applications/98E15712-5A98-439B-BED1-82A5A548CB15/Sample.app /Sample.sqlite' 到 '/private/var/mobile/Library/Mobile Documents/TV8M2M4B6L~com~companyName~sam/Documents/Sample.sqlite'。}

//我的代码

0 投票
2 回答
5326 浏览

iphone - 从 iCloud 中的应用程序备份阻止

苹果存储指南的方式给我带来了更多问题,因为我从 Documents 目录(文件、数据库和某种与应用程序相关的东西)维护的大部分数据。最近我上传了一个二进制文件到应用程序商店,它被拒绝了苹果苹果拒绝报告根据这一点向我提供了一份报告,我将更改我的代码如下

我的问题:

1.我可以直接使用 addSkipBackupAttributeToItemAtURL: 方法到文档目录来禁止我在文档目录中的所有文件的 iCloud 备份。

2.上面提到的代码足以让我的应用程序在应用程序商店中获得批准,以防我的最后一个二进制文件由于“不备份”属性而被拒绝,因为我的文档目录中不包含“不备份”属性。

0 投票
5 回答
16880 浏览

iphone - NSUbiquitousKeyValueStore 错误:没有有效的 com.apple.developer.ubiquity-kvstore-identifier 权利

我在将 iCloud 与我的应用程序集成时遇到问题。

当我设置测试 iCloud 可用性时,我收到了该功能的成功

但在此之后,当我尝试执行时:

我收到错误

有想法该怎么解决这个吗?我的 App.Entitlements 文件使用默认的宏前缀,自动生成的文件没有任何变化。iCloud 肯定在 iTunes Connect 中的 AppID 上启用。

谢谢。

0 投票
5 回答
6770 浏览

objective-c - 调用 -[NSFileManager setUbiquitous:itemAtURL:destinationURL:error:] 永远不会返回

我有一个NSDocument基于简单的 Mac OS X 应用程序,我正在尝试在其中实现 iCloud 文档存储。我正在使用 10.7 SDK 进行构建。

我已经为 iCloud 文档存储配置了我的应用程序,并包含了必要的权利 (AFAICT)。该应用程序正确构建、运行和创建本地通用容器 Documents 目录(这需要一段时间,但一切似乎都在工作)。我正在使用NSFileCoordinatorApple 推荐的 API。我相当确定我使用的UbiquityIdentifier是 Apple 推荐的正确方法(它在下面进行了编辑)。

我在这个 WWDC 2011 视频中密切关注 Apple 的 iCloud 文档存储演示说明:

会话 107 自动保存和 Lion 中的版本

我的代码看起来与该演示中的代码几乎相同。

但是,当我调用我的操作以将当前文档移动到云端时,我在调用该方法时遇到了活性问题。-[NSFileManager setUbiquitous:itemAtURL:destinationURL:error:]它永远不会回来。

这是我的NSDocument子类中的相关代码。它几乎与 Apple 的 WWDC 演示代码相同。由于这是一个动作,因此在主线程上调用它(如 Apple 的演示代码所示)。当调用该-setUbiquitous:itemAtURL:destinationURL:error:方法时,死锁会在接近尾声时发生。我试过移动到后台线程,但它仍然永远不会返回。

似乎信号量在等待永远不会到达的信号时阻塞。

在调试器中运行此代码时,我的源 URL 和目标 URL 看起来是正确的,因此我相当确定它们计算正确,并且我已确认目录存在于磁盘上。

我是否在做任何明显错误的事情会导致-setUbiquitous永远不会回来?

0 投票
1 回答
375 浏览

ios - iOS 应用程序的 iCloud 服务器空间限制

这是一个普遍的问题,
应用程序在 iCloud 服务器上存储数据是否有任何限制(一般不超过 5 GB 的最大限制)。

0 投票
2 回答
568 浏览

iphone - 加载文件时捕获 EXC_BAD_ACCESS 的方法

我正在使用 UIDocument 加载文件。我现在已经损坏了一个文件,以查看发生了什么以及我的应用程序的行为方式。它会因 EXC_BAD_ACCESS 而崩溃,我现在想知道应该如何处理这种情况。我只是希望文件永远不会损坏吗?在 UIDocument 之前的日子里,我对 NSEXCEPTION 使用了 @try 和 @catch,但这不适用于 EXC_BAD_ACCESS。这是我会使用 NSZOMBIE 的情况吗?据我了解其他帖子,NSZombie 仅用于调试目的,而不是您应该始终依赖的东西。如果我破坏了我的数据,这是抛出 EXC_BAD_ACCESS 的代码行:

感谢您的任何建议。

0 投票
5 回答
12369 浏览

iphone - iOS 5.0.1:如何验证文件夹是否标记为 iCloud 的“不备份”?

我想设置Do not back up到我的文件夹中Document Directory

我找到了“不备份”的代码,但我如何验证该文件夹是否被标记。

0 投票
3 回答
5487 浏览

ios - 开发人员可以在 Windows 应用程序中使用 iCloud 吗?

开发人员可以使用 Apple 的 iCloud API 在 Mac OS X 和 iOS 上不同版本的应用程序之间同步应用程序数据。

如果开发者有他们的应用程序的 Windows 版本,这个版本是否也可以使用 iCloud 将应用程序数据与他们在 Mac OS X 和 iOS 上的应用程序版本同步?