3

アプリケーションは最初からiCloudに入れられていたので、データで埋めて、他のデバイスで同期が行われているのを見る機会があります。ただし、1つのデバイスでのみアプリケーションを削除して再デプロイした後、問題が発生し始めています。

特に、起動時には、この時点で多くの時間がかかります。

NSLog(@"add coordinator");
if (![__persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error]) {
    NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
    abort();
}
NSLog(@"finish");

コンソールに「コーディネーターの追加」が表示されますが、永久に一時停止しているようです。代わりに、コアデータロギングをアクティブ化することで、多くの選択と更新を行っていることがわかります。

次に、各transactionNumberのログエラーメッセージの無限のリストが表示されます。

CoreData: Ubiquity: Error importing transaction log: <PFUbiquityTransactionLog: 0x1929e350>
    transactionLogLocation: <PFUbiquityLocation: 0x17bf1c40>: /private/var/mobile/Library/Mobile Documents/6G8M57K6MU~myapp/mobile.63606F7B-D6A9-5937-9160-126AC1315EBF/myAppCloud/3IEWV8FXM6GJ58H5PkyqFsyuoUZ2qIOuJOfon1QIYC4=/035A5A1C-F893-4B67-A784-866A4DE1B3F1.1.cdt
    transactionNumber: 1
, exception: -[__NSCFDictionary setObject:forKey:]: attempt to insert nil key
-[_PFUbiquityRecordsImporter operation:failedWithError:](839): CoreData: Ubiquity:  Import operation encountered an error: Error Domain=NSCocoaErrorDomain Code=134060 "The operation couldn’t be completed. (Cocoa error 134060.)" UserInfo=0x194c9f40 {exception=-[__NSCFDictionary setObject:forKey:]: attempt to insert nil key} while trying to import the log file at the URL: <PFUbiquityTransactionLog: 0x1929e350>
    transactionLogLocation: <PFUbiquityLocation: 0x17bf1c40>: /private/var/mobile/Library/Mobile Documents/6G8M57K6MU~myapp/mobile.63606F7B-D6A9-5937-9160-126AC1315EBF/myAppCloud/3IEWV8FXM6GJ58H5PkyqFsyuoUZ2qIOuJOfon1QIYC4=/035A5A1C-F893-4B67-A784-866A4DE1B3F1.1.cdt
    transactionNumber: 1

次に、私が言ったように、「終了」が印刷され、アプリにはデータがまったくありません。

4

1 に答える 1

1

Appleエンジニアは、私がApple Devフォーラムで行った投稿に返信し、これは今後のiOS6で修正された既知のバグであると述べました。

したがって、デバイス上のすべてのデータをスクラッチしてやり直す以外に解決策はありません。この時点で、私はiCloudなしでCoreDataとともに出荷すると思います。

于 2012-06-20T19:29:44.480 に答える