2012-03-13 12 views
2

ファイルを新しい場所に移動して使用するまで待つ必要があります。操作が完了するまで待つ

シミュレータでは、このコードは速く実行され、ファイルは使用前に新しい場所に移動されますが、実際のデバイスでは使用されません。

私は@synchronizedを使用しようとしましたが、正しいツールではないようです。

アドバイスはありますか?

 NSURL *newurl = [[legacyPersistentStoreURL URLByDeletingPathExtension] URLByAppendingPathExtension:@"guide"]; 
     NSURL *desturl = [newurl URLByAppendingPathComponent:@"StoreContent"]; 
     [[NSFileManager defaultManager] createDirectoryAtURL:desturl withIntermediateDirectories:YES attributes:nil error:NULL]; 
     NSURL *finalurl = [desturl URLByAppendingPathComponent:@"persistentStore"]; 
     [fileManager moveItemAtURL:legacyPersistentStoreURL toURL:finalurl error:NULL]; 

答えて

2

この方法では動作しません

- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wait; 
+0

ありませんが、役立つことがあります。 UIManagedDocumentエラー:操作を完了できませんでした。 (ココアエラー260) 2012-03-13 14:39:21.371ガイド[8824:2403] { 理由= "店舗ファイルがありません"; } – Shmidt

+0

@Flinkコードに他の問題がいくつか存在します。あなたはNSFileReadNoSuchFileErrorを取得しています。 – Vignesh

+0

ファイルが新しい場所に移動されなかったためです。そのファイルを使用する次のコードは、ファイルが移動すると同時に実行されます – Shmidt

関連する問題