我正在构建一个应用程序,需要在打开应用程序之前输入访问凭据(组织代码、访问代码)。当用户第一次输入访问权限时,我们需要保存首选项。当用户再次打开应用程序时,他需要自动继续应用程序而不是访问凭据。
log cat 中没有错误,但没有保存首选项。我需要保存首选项并在用户打开应用程序时加载。我在代码中做错了吗?
我正在构建一个应用程序,需要在打开应用程序之前输入访问凭据(组织代码、访问代码)。当用户第一次输入访问权限时,我们需要保存首选项。当用户再次打开应用程序时,他需要自动继续应用程序而不是访问凭据。
log cat 中没有错误,但没有保存首选项。我需要保存首选项并在用户打开应用程序时加载。我在代码中做错了吗?
这个常用功能是将您的数据添加到 NSUserDefaults.. 看这是类函数,所以您必须使用您的类名来调用它.. 将其写入您的 AppDelegate 实现文件中..
+(void)addToNSUserDefaults:(id)pObject forKey:(NSString*)pForKey
{
NSUserDefaults *defaults =[NSUserDefaults standardUserDefaults];
[defaults setObject:pObject forKey:pForKey];
[defaults synchronize];
}
这是从 NSUserDefaults 获取数据..
+(id)getFromNSUserDefaults:(NSString*)pForKey
{
id pReturnObject;
NSUserDefaults *defaults =[NSUserDefaults standardUserDefaults];
pReturnObject = [defaults valueForKey:pForKey];
return pReturnObject;
}
当您启动应用程序时,只需在 AppDelegate 的这个方法中检查这个,
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NSString *strtmp = [AppDelegate getFromNSUserDefaults:YOUR_KEY];
if(strtmp == nil)
{
//User have to enter data to save in User Defaults
}
else
{
//Application Starts without entering Code, as you have it in your UserDefaults
}
}