2010-07-06 41 views
0

我有一個具有使應用崩潰的問題核心數據的應用程序,我還沒有追查其病因尚未。崩潰的結果之一是,下次啓動應用程序時,無法打開應用程序先前使用的持久存儲區。從addPersistentStoreWithType:方法返回以下錯誤:崩潰無效的URL NSPersistentStoreCoordinator

NSUnderlyingException = Error validating url for store; 

,當然,它不能獲取任何以前的應用程序存儲對象。有誰知道什麼可能導致應用程序不再能夠找到其持久存儲?

導致應用程序之前關閉所有這一切的發生的碰撞產生以下崩潰日誌:

Exception Type: EXC_CRASH (SIGABRT) 
Exception Codes: 0x00000000, 0x00000000 
Crashed Thread: 0 

Thread 0 Crashed: 
0 libSystem.B.dylib    0x0007e98c __kill + 8 
1 libSystem.B.dylib    0x0007e97c kill + 4 
2 libSystem.B.dylib    0x0007e96e raise + 10 
3 libSystem.B.dylib    0x0009361a abort + 34 
4 libstdc++.6.dylib    0x000453b0 __gnu_cxx::__verbose_terminate_handler() + 376 
5 libobjc.A.dylib    0x00005858 _objc_terminate + 104 
6 libstdc++.6.dylib    0x00043776 __cxxabiv1::__terminate(void (*)()) + 46 
7 libstdc++.6.dylib    0x000437ca std::terminate() + 10 
8 libstdc++.6.dylib    0x00043896 __cxa_throw + 74 
9 libobjc.A.dylib    0x00004714 objc_exception_throw + 64 
10 Foundation      0x000013c2 __NSThreadPerformPerform + 570 
11 CoreFoundation     0x00056a96 CFRunLoopRunSpecific + 1834 
12 CoreFoundation     0x00056356 CFRunLoopRunInMode + 42 
13 GraphicsServices    0x00003b2c GSEventRunModal + 108 
14 GraphicsServices    0x00003bd8 GSEventRun + 56 
15 UIKit       0x00002768 -[UIApplication _run] + 384 
16 UIKit       0x0000146c UIApplicationMain + 688 
17 Meetchu      0x00002568 main (main.m:14) 
18 Meetchu      0x0000251c start + 32 

我無法弄清楚什麼是從這個信息發生。任何人都可以幫助解決這些錯誤嗎?

非常感謝提前。

+0

有關錯誤的信息: 域= NSCocoaErrorDomain 代碼= 258 「操作無法完成(可口可樂錯誤258)。」 – 2010-07-06 19:08:44

回答

0

德魯,

沒有看到一些代碼,我可以告訴你的痛苦,而我的一個來源,當我第一次開始與核心數據進行版本控制你的模型。如果您有任何改變你的管理對象模型,這將導致你的應用程序沒有某種版本的地方(即輕量級)代碼崩潰。

這可能不是你的問題的根源,但有一點你可以嘗試是從您的iPhone模擬器您的應用或使用「重置內容和設置」從iPhone模擬器菜單。如果這可以解決問題,那麼您正在查看遷移問題。

乾杯。

+0

尼爾, 感謝您的想法,但是這一切與原來的版本發生的管理對象模型。 德魯 – 2010-07-06 19:41:36

1

如果要存儲的實際URL在應用程序的目錄中的文件,而不是每個相對於應用程序目錄的時間進行再生,則無效的網址是模擬器/設備的改變應用程序的目錄名的結果到一個隨機的UUID。它有時是爲了應對崩潰而做的。

明顯的第一步是日誌的URL,看看賣場實際上是在那個位置。

+0

這是一個相對URL,我有它輸出的路徑。這個路徑在應用程序工作時以及無效時都是相同的。 – 2010-07-07 04:51:57

+0

我認爲該網址必須有效。 URL是否僅在應用程序的下一次啓動時失敗,即模式是否工作 - >崩潰 - >失敗 - >工作?在發生崩潰之後,您是否必須做任何事情才能使其再次正常工作,或者在崩潰後第二次啓動應用程序時它會發揮作用嗎? – TechZen 2010-07-07 12:37:26