问题
I use NSUserDefaults to save some data locally. But the problem is it doesn't save the data all the times.
For instance:
While an app is crashing I save the execption related informations using NSUserDefaults
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NSSetUncaughtExceptionHandler(&onUncaughtException);
}
void onUncaughtException(NSException* exception)
{
//save exception related details using NSuserdefaults
}
回答1:
The problem is that you have to synchronize
thne NSUserDefaults
while crashing.Since you are not doing that, the exception details disappear
Call the synchronize
method on app termination:
- (void)applicationWillTerminate:(UIApplication *)application
{
[[NSUserDefaults standardUserDefaults] synchronize];
}
来源:https://stackoverflow.com/questions/25229276/nsuserdefaults-saves-details-sometimes-and-doesnt-someother-times