【问题标题】:Store information on iphone device在 iphone 设备上存储信息
【发布时间】:2011-02-12 18:55:08
【问题描述】:

我是 iphone 开发新手。在我的应用程序中,我使用两个 UITextfield 来注册用户 ID 和密码。用户在文本字段中输入文本后,这些用户 ID 和密码应保存在 iphone 设备上。没有数据库有什么想法吗?不然怎么办?

【问题讨论】:

    标签: iphone


    【解决方案1】:

    您宁愿使用 Keychain 存储密码,使用 Preferences 存储用户登录信息。

    搜索 SFHFKeychainUtils.h(由 Buzz Andersen 于 2008 年 10 月 20 日创建)以查找允许您执行简单钥匙串操作(并能够在 iPhone 模拟器上执行它们)的类。

    存储用户登录信息:

    NSString *defaultUsername = ...;
    [[NSUserDefaults standardUserDefaults] setObject:myUserName forKey:@"myServiceUserName"];
    

    存储密码:

    NSError *wsError;   
    NSString *defaultUsername = ...
    if (defaultUsername && [defaultUsername length] != 0) {
        [SFHFKeychainUtils storeUsername:defaultUsername andPassword:pass forServiceName:@"MyService" updateExisting:YES error:&wsError];
        if (wsError != nil) {
            NSLog(@"Could not store password into keychain. Error: %@", [wsError localizedDescription]);
        }
    } 
    

    【讨论】:

      【解决方案2】:

      看看

      iPhone Core Data

      您将不得不深入,但这是保存数据的主要使用层,因为您将来可能希望保存更多。

      如果您只想保存一些设置,这里有一个快速简单的技巧:

      • Settings Bundle(资源)文件添加到您的项目中
      • 编译并运行项目
      • 在 iPhone 模拟器中,打开设置,您将看到您的应用程序名称,深入研究,您将看到设置文件

      iPhone 将根据该 XML 文件为您完成所有 UI,只需搜索您可能拥有的所有可能性,如果您仍然需要帮助,请在此处发布 :)

      【讨论】:

      • 核心数据很棒,所有iphone开发者都应该熟悉它,但我认为保存两个字符串可能有点矫枉过正
      • 我回答的时候以为他会从UserIdPaswword开始,迟早他会想添加越来越多的,甚至是离线访问的实际数据......核心数据是最好的起点......否则,设置包会很好:)
      【解决方案3】:

      您也可以使用 SQL Lite 数据库作为本地设备数据库..

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-06-04
        • 1970-01-01
        • 1970-01-01
        • 2016-08-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多