iPhoneアプリ内でアプリケーションスコープのデータを保持する方法①(UserDefaultsに保持する)

How to remain a variable in application scope? No1

皆さんはiPhoneアプリで、アプリケーションスコープのデータを保持するのに、どのような方法をとっていますか?

アプリケーションスコープのデータとは、アプリ全体で使用する設定や状態、複数の画面間でまたがったデータのことです。このようなデータは、一つの画面から次の画面への項目の受け渡しとは違い、各画面から共通で参照できる必要があります。

私は、今のところ、以下の3つの方法を、利用シーンによって使い分けています。私の多くはないiPhoneアプリ開発経験から落ち着いている方法なので、他に良い方法があれば、ぜひ教えてください!

①UserDefaultsに保持する

UserDefaultsは、iPhoneのアプリで、設定値を保存するのに便利な方法です。

実体はplist形式のファイルへの保存ですから、アプリケーションスコープで値を保持するというよりは、値をファイルへ保持しておき、アプリ内から参照できるといった意味づけが大きいかと思います。

一時的なデータを保持するにはあまり向きませんが、アプリレベルで参照する設定値などは、次回起動時のためにファイルへも保存することが多いため、保持する内容によっては使える方法だと思います。

値の保存

+ (void) storeUserBirthday: (NSString *) userbirthday
{
	NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

	[defaults setObject: userbirthday forKey: @"kCachedKey"];
	[defaults synchronize];
}

 

保存されているデータの取得

+ (NSString *) cachedUserBirthday
{
	return [[NSUserDefaults standardUserDefaults] stringForKey: @"kCachedKey"];
}

 



こんな記事も関係あるかも。読んでみてね。

コメントを残す

サブコンテンツ

このページの先頭へ