【问题标题】:How to manage the data base in iOS如何在 iOS 中管理数据库
【发布时间】:2011-07-16 08:49:55
【问题描述】:

我必须制作一个 iPhone 应用程序。 我有一个按钮,如果我点击按钮,按钮名称是在 xib 中注册,然后注册表将打开

注册表格在网络服务器中创建 如果用户填写注册表 假设他在注册时填写了用户名和密码,它将保存在服务器中,并且相同的用户名和密码也应该保存在或本地数据库中。

【问题讨论】:

    标签: ios objective-c sqlite core-data settings


    【解决方案1】:

    您有 3 个主要选项来持久化登录数据;设置、核心数据和 SqlLite。只需要一个用户名和密码,您只需要使用设置,因为其他两个选项的开销会很大,而且它们更常用于关系数据。

    要使用设置,您需要在应用程序控制器通过调用初始化时加载它们;

    + (void) loadDefaultSettings {
    
        NSString *path = [[NSBundle mainBundle] bundlePath];
        NSString *pListPath = [path stringByAppendingPathComponent:@"Settings.bundle/Root.plist"];
        NSDictionary *pList = [NSDictionary dictionaryWithContentsOfFile:pListPath];
    
        NSMutableArray *prefsArray = [pList objectForKey:@"PreferenceSpecifiers"];
        NSMutableDictionary *regDictionary = [NSMutableDictionary dictionary];
    
        for (NSDictionary *dict in prefsArray) {
            NSString *key = [dict objectForKey:@"Key"];
            if (key) {
                id value = [dict objectForKey:@"DefaultValue"];
                [regDictionary setObject:value forKey:key];
            }
        }
    
        [[NSUserDefaults standardUserDefaults] registerDefaults:regDictionary];
    }
    

    然后,您可以通过对此的方法调用来存储您的用户名和密码;

    + (void) storePersistedLogin:(NSString *)uid withPassword:(NSString *)pswd  {
        [[NSUserDefaults standardUserDefaults] setObject:uid forKey:@"UID"];
        [[NSUserDefaults standardUserDefaults] setObject:pswd forKey:@"PSWD"];
    }
    

    您可以使用以下方法填充 UITextField 输入;

    + (void) populatePersistedLogin:(UITextField **)uid andPassword:(UITextField **)pswd {
        [*uid setText:(NSString *)[[NSUserDefaults standardUserDefaults] objectForKey:@"UID"]];
        [*pswd setText:(NSString *)[[NSUserDefaults standardUserDefaults] objectForKey:@"PSWD"]];
    }
    

    我在单独的 SettingsUtils 类中有这些公共方法,因此我可以确保我的密钥是相同的。您也可以将键声明为 NSString 对象,以减少输入错误的机会。

    【讨论】:

    • 我想要相同的用户名和密码保存在 iphone 的 sqlite 数据库中
    • 例如,我用用户名和密码注册表单,我必须在本地数据中存储相同的用户名和密码,然后我如何帮助朋友和数据进入 json
    • @Abhishek 我对你的评论感到困惑,你想做什么?您是否要存储多个用户名和密码?您提到 JSON,这是将表单提交到服务器的响应吗?您需要从 JSON 中提取值,然后按照我上面的描述存储它们。如果你想要多个用户名和密码,你想如何使用它们?该设备不只有一个用户吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-18
    • 1970-01-01
    相关资源
    最近更新 更多