2

私が正確に欲しいもの:

ログインシステムがあります。ユーザーが自分のアカウントにログインするたびに、アプリは json 応答として一意の ID を取得します。ユーザーは自分の一意の ID を使用してプロファイルにアクセスし/rcvs、同じ一意の ID を介してメッセージを送信するため、アプリ全体でこの ID を使用する必要があります。

アプリ全体でこの ID を保持する必要があります。アプリがクラッシュしたり閉じたりしても。ユーザーがアプリに戻った後、ユーザーはログイン画面を表示せずに直接ログインします。また、この ID は、ユーザーがサインアウト ボタンをクリックした場合にのみ削除されるか、null になります。

これは私のコードです: http://www.pastie.org/3848543

次のいずれかを使用する必要があると思います。

  1. pList
  2. NSUserDefaults
  3. appDelegate
4

5 に答える 5

5

これは、nsuserdefaults を使用して解決できます。

サンプルコードは次のとおりです。

NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];
    if([standardUserDefaults objectForKey:@"your-key-goes-here"] == nil)
        [standardUserDefaults setBool:YES forKey:@"your-key-goes-here"];

上記のようにキーが存在することを確認できます。答えが得られたら、上記のように設定できますが、もちろん次のような方法を使用します。

[standardUserDefaults setValue:@"your-value" forKey:@"your-key-goes-here"];

そして最後に、次のように userdefaults を同期する必要があります。

[standardUserDefaults synchronize];  

お役に立てれば..

于 2012-05-02T12:47:39.177 に答える
1

私が間違っている?この問題はCookieを使用して解決できると思います。 ユーザーがログインするときにIDを設定し、必要に応じて変更しますか?また、Cookie内の情報を簡単に読み取ることができます。

于 2012-05-02T12:41:44.220 に答える
1

遅れて並べ替え、NSDefaults を使用してこの ID を保存します。2 番目のオプションは、アプリ デリゲートにプロパティを追加し、それに valut を割り当てることです。

于 2012-05-02T12:54:00.980 に答える
1

を使用することをおNSUserDefaults勧めします。あなたは自分で提案しました。任意のローカル ファイル ( などplist) に保存する場合は、ファイルまたはログイン データを暗号化する必要があります。暗号化しないと、他のユーザーが明らかに読み取ることができるためです (したがって、セキュリティは低くなります)。

はデリゲート クラスにすぎないため、何を使用しているappDelegateかはわかりません。appDelegateユーザーを認証するためのデリゲート メソッドを使用できますが、それでも最初の質問に戻ることになります。

于 2012-05-02T13:19:45.927 に答える