Cordova 插件未保存到 iCloud

Posted

技术标签:

【中文标题】Cordova 插件未保存到 iCloud【英文标题】:Cordova plugin not saving to iCloud 【发布时间】:2017-07-13 22:09:05 【问题描述】:

我正在使用带有以下插件的 Ionic:cordova-plugin-icloudkv 将数据保存在 Apples iCloud 中。

我打电话:

sync(successCallback/*(dictionary_with_all_sync_keys)

然后:

save(key, value, successCallback)

哪个保存,即我可以再次访问它:

load(key, successCallback/*(value)*/, failCallback)

并按预期获取保存的值。

问题

当我关闭应用程序并重新启动它,然后尝试:

sync(successCallback/*(dictionary_with_all_sync_keys)

然后:

load(key, successCallback/*(value)*/, failCallback)

我明白了:

钥匙不见了

好像值并没有被持久化到iCloud,而只是本地存储,当应用程序关闭时丢失。

问题

我怎样才能使上述内容持续到iCloud

谢谢

【问题讨论】:

【参考方案1】:

我猜你可能需要再次阅读official link中的插件用法

声明如下,

提醒:调用 sync 并不能保证(或影响)与 iCloud 的同步,而只是在内存和闪存之间,最终将由独立代理与 iCloud 同步。

所以同步实际上取决于独立代理。这个插件只是推送可用于同步的数据。希望对你有帮助

【讨论】:

我看到 cordova-plugin-icloudkv 包装了 NSUbiquitousKeyValueStore。这是否意味着它应该与iCloud 同步?因为NSUbiquitousKeyValueStore 会做所有的工作,即是“独立代理”吗?我看到我的应用程序没有设置iCloud Containers。我会这样做,并进行测试。如果它有效,将报告。 developer.apple.com/library/content/documentation/General/… @Richard 看看这个 - ***.com/questions/11389516/… 同步频率是系统控制的,我不是实时的。 NSUbiquitousKeyValueStore 只是通知 icloud 数据可以同步 我刚刚使用iCloud Containers 设置测试了我的应用程序,即我的配置文件启用了iCloud 服务。它有效!我可以卸载我的应用程序,然后当我再次安装它时,load k-v 对,该值被检索。 所以我的问题是我没有为我的配置文件启用iCloud @Richard 谢谢你,Richard 因为这是一个新的学习。干杯

以上是关于Cordova 插件未保存到 iCloud的主要内容,如果未能解决你的问题,请参考以下文章

Cordova各个插件使用介绍系列—canvas2ImagePlugin保存二维码到手机本地

将手机号码保存到 WP 联系人 wird cordova 联系人插件

添加新插件后,cordova_plugins.js 未更新

PhoneGap 应用程序上用于 Apache Cordova 的 Windows Azure 通知中心插件 - 未定义 WindowsAzure

插件未定义(cordova-plugin-googlemaps)

未调用 Cordova 插件回调 (iOS)