2012-12-31 12 views
8

Core DataiCloud(Magical Recordsを使用)を使用するアプリケーションテストを開始しました。Provisioning ProfilesとEntitlementを設定する際に多くの問題が発生した後、アプリは最後に実行されます。このメッセージを投げる::iCloudタイムアウト。 (iCloud + Core Data + Magical Recordを使用)

2012-12-31 03:42:07.079 iCloudTest[252:1103] -[PFUbiquitySafeSaveFile waitForFileToUpload:](268): CoreData: Ubiquity: <PFUbiquityPeerReceipt: 0x1cd5a420>(0) 
permanentLocation: <PFUbiquityLocation: 0x1cd57b30>: /private/var/mobile/Library/Mobile Documents/MA5BADG5AW~com~gazapps~iCloudTest/mobile.4088E03C-763E-5A81-BB1B-64CABAFA73E3/com.gazapps.iCloudTest/v8GumdiUYmkE0aO9iGtPTPHX07qqWk7kRytsQwHKjwU=/receipt.0.cdt 
safeLocation: <PFUbiquityLocation: 0x1cd57a80>: /private/var/mobile/Library/Mobile Documents/MA5BADG5AW~com~gazapps~iCloudTest/mobile.4088E03C-763E-5A81-BB1B-64CABAFA73E3/com.gazapps.iCloudTest/v8GumdiUYmkE0aO9iGtPTPHX07qqWk7kRytsQwHKjwU=/mobile.4088E03C-763E-5A81-BB1B-64CABAFA73E3.0.cdt 
currentLocation: <PFUbiquityLocation: 0x1cd57a80>: /private/var/mobile/Library/Mobile Documents/MA5BADG5AW~com~gazapps~iCloudTest/mobile.4088E03C-763E-5A81-BB1B-64CABAFA73E3/com.gazapps.iCloudTest/v8GumdiUYmkE0aO9iGtPTPHX07qqWk7kRytsQwHKjwU=/mobile.4088E03C-763E-5A81-BB1B-64CABAFA73E3.0.cdt 

kv: (null) 

Safe save failed for file, error: Error Domain=NSCocoaErrorDomain Code=512 "The file upload timed out." UserInfo=0x1cd5b7d0 {NSLocalizedDescription=The file upload timed out.} 
2012-12-31 03:42:07.083 iCloudTest[252:1103] +[MagicalRecord(ErrorHandling) defaultErrorHandler:](0xe5ac0) Error: The file upload timed out. 
2012-12-31 03:42:07.085 iCloudTest[252:1103] +[MagicalRecord(ErrorHandling) defaultErrorHandler:](0xe5ac0) Error Message: The file upload timed out. 
2012-12-31 03:42:07.086 iCloudTest[252:1103] +[MagicalRecord(ErrorHandling) defaultErrorHandler:](0xe5ac0) Error Domain: NSCocoaErrorDomain 
2012-12-31 03:42:07.087 iCloudTest[252:1103] +[MagicalRecord(ErrorHandling) defaultErrorHandler:](0xe5ac0) Recovery Suggestion: (null) 
2012-12-31 03:42:07.089 iCloudTest[252:907] *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayI objectAtIndex:]: index 0 beyond bounds for empty array' 
*** First throw call stack: 
(0x3a7702a3 0x3465f97f 0x3a6bae8d 0xdd453 0x38a6311f 0x38a624b7 0x38a671bd 0x3a743f3b 0x3a6b6ebd 0x3a6b6d49 0x38a842eb 0x338f62f9 0xd101d 0x37f22b20) 
libc++abi.dylib: terminate called throwing an exception 

私は、セットアップのコアデータスタックにこの方法を使用:

[MagicalRecord setupCoreDataStackWithiCloudContainer:@"XXXXXXXX.com.gazapps.iCloudTest" localStoreNamed:@"PersonDB.sqlite"]; 

誰もが今までにこの問題を抱え

? 10

答えて

13

はい、私は思い出した回数よりも多く思い出します。

これは、Core Dataの内部が、わかりにくく、文書化されていない方法でiCloudに接続できなかったことを意味します。リカバリパスや修正はありません。後でやり直してください。これらのエラーはMagical Recordやコードからのものではなく、Core Data/iCloudの内部エラーです。

ここには:これはあなたが何か間違ったことを意味するものではありません。そして、その結果はです。それを修正するために何もできません。コアデータでiCloudを使用している場合、はちょうどときどきとなり、それに対処する必要があります。バグを報告し、いつかそれを修正すると信じる神や神に祈ってください。 iCloudを使用したコアデータは基本的に薄れており、あなたは最も魅力的な部分に遭遇しています。

ときどきコールをもう一度やり直すと便利です。しかし、Magical Recordはvoidを返すので、コードでの失敗を検出することは、あなたが望むほど単純ではありません。

テスト中、は、iCloudからすべてのアプリケーションのデータを削除してクリーンアップを開始するのに役立ちます。設定 - > iCloud - >ストレージ&バックアップ - >ストレージの管理 - >(あなたのアプリ名) - >編集 - >すべて削除のiOSでこれを行います。 http://developer.icloud.com/をチェックして、クラウドにあるものを確認してください。また、問題が発生している場合は、アプリを端末から削除して、古いデータがないようにしてください。

+0

私は後で試してみます。ありがとう、トム! – Sebastian

+0

Tom、iCloud + CoreDataの代替手段をご存知でしたか? – Sebastian

+1

はい、私はまだ真剣に使用していません。 http://www.wasabisync.comとhttps://simperium.comを参照してください。両方ともCore Dataで動作します。 DropboxのAPIもありますが、Core Dataでは直接動作しません。 –

関連する問題