UIApplicationDelegate の application:openURL:sourceApplication:annotation: メソッドの NSUserDefaults にデータを保存し、メイン ビュー コントローラーの viewDidLoad: でこのデータを読み取ろうとしています。ただし、データは常に空です。
メイン ビュー コントローラの viewDidLoad: に同じデータを保存すると、すぐに表示されて回復可能になりますが、UIApplicationDelegate に保存するときはそうではありません。
この動作について何か考えはありますか?ありがとうございました。
コードは次のとおりです。
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
// Save my data
[[NSUserDefaults standardUserDefaults] setURL:url forKey:@"url"];
[[NSUserDefaults standardUserDefaults] synchronize];
return YES;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// It's always false !!
if ([[NSUserDefaults standardUserDefaults] URLforKey:@"url"] != nil){
// Do something with url
}
}