相关疑难解决方法(0)

在iOS 8共享扩展程序和主应用程序之间共享数据

最近,我一直在制作一个简单的iOS 8共享扩展来了解系统的工作原理.正如Apple在其App Extension编程指南中所述:

默认情况下,您的应用及其扩展程序无法直接访问彼此的容器.

这意味着扩展程序和包含应用程序不共享数据.但在同一页面上,Apple带来了一个解决方案:

如果您希望包含应用及其扩展能够共享数据,请使用Xcode或Developer门户为应用及其扩展启用应用组.接下来,在门户中注册应用程序组,并指定要在包含的应用程序中使用的应用程序组.

然后,可以使用NSUserDefaults在包含应用程序和扩展程序之间共享数据.这正是我想做的.但由于某种原因,它不起作用.

在同一页面中,Apple建议使用标准默认值:

var defaults = NSUserDefaults.standardUserDefaults()
Run Code Online (Sandbox Code Playgroud)

在WWDC演示文稿(217)中,他们提出了一个共同的方案:

var defaults = NSUserDefaults(suiteName: kDefaultsPackage)
Run Code Online (Sandbox Code Playgroud)

此外,我为包含应用目标和扩展目标的应用组启用了相同的应用组名称: XCode目标功能,应用程序组

但所有这些设置都是无用的.我无法从扩展程序中检索存储在包含应用程序中的数据.就好像两个目标正在使用完全不同的NSUserDefaults存储.

所以,

  1. 这种方法有解决方案吗?
  2. 如何在包含应用和共享扩展之间共享简单数据?数据只是API的用户凭据.

swift xcode6 ios8 ios-app-extension

63
推荐指数
4
解决办法
4万
查看次数

在 Swift 中将数据从 Apple Watch 传输到 iPhone

我已经尝试了几个小时来找到一种将全局变量从 Apple Watch 发送到 iPhone 的方法。

关于将数据从 iPhone 传输到 Apple Watch 有很多问题,但在 Swift 3 中反之则不然。

这不是重复的,因为我想将数据从 Apple Watch 传输到 iPhone,反之亦然。

我怎样才能做到这一点?

iphone swift apple-watch swift3

5
推荐指数
1
解决办法
5394
查看次数

标签 统计

swift ×2

apple-watch ×1

ios-app-extension ×1

ios8 ×1

iphone ×1

swift3 ×1

xcode6 ×1