NSUserDefaults保存用户名和密码

#import "ViewController.h"

@interface ViewController ()
@property (weak, nonatomic) IBOutlet UITextField *nameTextField;
@property (weak, nonatomic) IBOutlet UITextField *ageTextField;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    //1.测试部分:获取沙盒的Library目录
    NSArray *libraryPaths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
    NSString *libraryPath = [libraryPaths lastObject];
    NSLog(@"libraryPath:%@",libraryPath);

    //2.初始化数据(从第四步保存的数据,读取它,并显示)
    [self initDataByUserDefault];

    //3.在用户将后台程序移除后,需要知道针对这个动作的触发时间/方法(通知)
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillDidEnterBackground:) name:UIApplicationDidEnterBackgroundNotification object:[UIApplication sharedApplication]];

    //4.在后面
}

- (void)initDataByUserDefault{
    //获取全局的NSUserDefaults对象
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    //使用defaults对象来获取保存的数据
    NSString *nameStr = [defaults objectForKey:@"name"];
    NSString *ageStr = [defaults objectForKey:@"age"];
    //将上步获取的数据,赋值给nameTextField
    if (nameStr) {
        self.nameTextField.text = nameStr;
    }
    if (ageStr) {
        self.ageTextField.text = ageStr;
    }

}

- (void)applicationWillDidEnterBackground:(NSNotification *)notitication{
    NSLog(@"测试:进入后台时机");
    //4.在触发方法中去保存你要保存的数据。
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    [defaults setObject:self.nameTextField.text forKey:@"name"];
    [defaults setObject:self.ageTextField.text forKey:@"age"];

    //强制将用户输入的名字和年龄数据保存到硬盘中
    //这里不是自己决定的,由系统决定 ,存在Library目录下。
    [defaults synchronize];
}

@end
时间: 2024-07-29 06:55:36

NSUserDefaults保存用户名和密码的相关文章

使用NSUserDefaults保存用户名和密码

创建一个user defaults方法有多个,最简单得快速创建方法: NSUserDefaults *accountDefaults = [NSUserDefaults standardUserDefaults]; 添加数据到 user defaults: [accountDefaults setObject:nameField.text forKey:UserDefaultNameKey]; 也可以添加基本数据类型int, float, bool等,有相应得方法 [accountDefault

使用keychain保存用户名和密码等敏感信息 KeychainItemWrapper和SFHFKeychainUtils

iOS的keychain服务提供了一种安全的保存私密信息(密码,序列号,证书等)的方式,每个ios程序都有一个独立的keychain存储.相对于 NSUserDefaults.文件保存等一般方式,keychain保存更为安全,而且keychain里保存的信息不会因App被删除而丢失,所以在 重装App后,keychain里的数据还能使用.从ios 3.0开始,跨程序分享keychain变得可行. 如何需要在应用里使用使用keyChain,我们需要导入Security.framework ,key

android 保存 用户名和密码 设置等应用信息优化

1.传统的保存用户名,密码方式 SharedPreferences Editor editor = shareReference.edit(); editor.putString(KEY_NAME,"username_value"); 通过这样的方法,能够基本满足需求,比如有用户名,那么就Editor.putString存放就好. 但是这样的方法有一些弊端: (1)在存放一些集合信息,存储ArrayList就不合适 (2)如果针对用户,新增加了很多熟悉,比如性别,头像等信息,那么需要一

Android简易实战教程--第十六话《SharedPreferences保存用户名和密码》

之前在Android简易实战教程--第七话<在内存中存储用户名和密码> 那里是把用户名和密码保存到了内存中,这一篇把用户名和密码保存至SharedPreferences文件.为了引起误导,声明实际开发中不会用到这两种方式,这里指示提供一种思路和给初学者学习简单的api. 由于内容和之前的基本一样,不做过多的解释.直接上代码: xml文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/androi

Android保存用户名和密码

我们不管在开发一个项目或者使用别人的项目,都有用户登录功能,为了让用户的体验效果更好,我们通常会做一个功能,叫做保存用户,这样做的目地就是为了让用户下一次再使用该程序不会重新输入用户名和密码,这里我使用3种方式来存储用户名和密码 1.通过普通 的txt文本存储 2.通过properties属性文件进行存储 3.通过SharedPreferences工具类存储 第一种: /** * 保存用户名和密码的业务方法 * * @param username * @param password * @ret

使用keychain保存用户名和密码等敏感信息 KeychainItemWrapper和SFHFKeychainUtils。

iOS的keychain服务提供了一种安全的保存私密信息(密码,序列号,证书等)的方式,每个ios程序都有一个独立的keychain存储.相对于NSUserDefaults.文件保存等一般方式,keychain保存更为安全,而且keychain里保存的信息不会因App被删除而丢失,所以在重装App后,keychain里的数据还能使用.从ios 3.0开始,跨程序分享keychain变得可行. 如何需要在应用里使用使用keyChain,我们需要导入Security.framework ,keych

终于解决“Git Windows客户端保存用户名与密码”的问题

Git - How to use netrc file on windows - Stack Overflow 这就是正确答案,我们已经验证过了,下面详细描述一下解决方法: 1. 在Windows中添加一个HOME环境变量,值为%USERPROFILE%,如下图: 2. 在"开始>运行"中打开%Home%,新建一个名为"_netrc"的文件. 3. 用记事本打开_netrc文件,输入Git服务器名.用户名.密码,并保存.示例如下: machine git.cn

KIKeyChain 安全保存用户名和密码

在 iOS 应用程序开发过程中,我们经常会存储一些比较重要的信息.如涉及到用户系统的 App, 我们就需要考虑自动登录的功能,如果把用户的用户名和密码存储在 NSUserDefault 中很不安全.第一,该信息是明文存储的:第二,可以通过一些工具获取到 NSUserDefault 中的信息.容易造成泄露用户的账号信息.出于安全方面的考虑,Apple 为我们提供了一个叫 KeyChain 的工具, 存储在里面的信息不能说绝对安全,但是相对于 NSUserDefault 或者其它一些存储在 App

IOS开发之----两种保存用户名和密码实现记住密码库

使用Keychain存储用户敏感信息 iOS的keychain服务提供了一种安全的保存私密信息(密码,序列号,证书等)的方式,每个ios程序都有一个独立的keychain存储.相对于 NSUserDefaults.文件保存等一般方式,keychain保存更为安全,而且keychain里保存的信息不会因App被删除而丢失,所以在 重装App后,keychain里的数据还能使用.从ios 3.0开始,跨程序分享keychain变得可行. 如何需要在应用里使用使用keyChain,我们需要导入Secu