2017-02-04 59 views
0

我正在寻找watchkit扩展程序来从iCloud文档存储中读取文件。我从iOS应用程序中也可以读取它的文件。我利用共享类,因此代码是相同的。问题是,在手表上,云容器的URL返回nil。Watchkit扩展程序无法从iCloud中读取

static func readFromFile(fileName:String) -> String? 
{ 
    let fileManager = FileManager.default 
    var cloudURL = fileManager.url(forUbiquityContainerIdentifier: nil) 

    cloudURL = cloudURL?.appendingPathComponent("Documents/\(fileName)") 

    do 
    { 
     return try String(contentsOf: cloudURL!) 
    } catch { 
     print (error) 
     return nil 
    } 

在上述情况下,cloudURL在手表上为零,但不在手机上。对于我检查了手表和手机都使用了相同的标识符。我也尝试直接输入名称而不是使用零,并让它从权利中获取它。容器格式:

iCloud.com.company.app 

我的理解是Watch OS 3应该可以使用iCloud。

更新:

我打印出来let token = fileManager.ubiquityIdentityToken,我得到以下几点:

WatchKit扩展[390:687462] [默认] [错误]错误而获得 ubiquityIdentityToken:错误域= NSCocoaErrorDomain代码= 4099“连接到名为com.apple.bird.token的服务的连接已失效。” 的UserInfo = {NSDebugDescription =到服务名为 com.apple.bird.token被认定无效的连接。}

回答

0

我正式听到苹果回来,这不是关注操作系统的支持功能。这与我让他们知道的他们自己的文档相反。希望别人看到这种回应,它可以节省大量的时间,我最终浪费了。

相关问题