0

アプリでは、ユーザーは電子メール/パスワード、Facebook または Twitter を介してサインアップできます。

Facebook 経由でアカウントを作成すると、アプリは電子メール フィールドを Facebook アカウントに設定します。メールを共有しないため、これは Twitter には当てはまりません。

Facebook にサインアップしたユーザーが後でパスワードを設定することを決定すると、問題が発生します。

一般的なパスワード変更フォームは、次の 3 つのテキスト フィールドで構成されます。

  • 現在のパスワード
  • 新しいパスワード
  • 新しいパスワードを繰り返す

ユーザーが Facebook 経由で作成された場合、PFUser オブジェクトには、ユーザーが知っているパスワードは含まれません。したがって、パスワードの変更中に現在のパスワード フィールドを要求することはできません。

Parse には空のパスワードをチェックする方法がないため、ユーザーが Facebook/Twitter と電子メール/パスワードを介して作成されたかどうかを確認するにはどうすればよいですか?

Facebook または Twitter にリンクされているかどうかを確認するだけでは十分ではありません。このアプリには、認証されたアカウントに対して Facebook または Twitter をリンクおよびリンク解除するオプションもあります。

4

2 に答える 2

0

あなたが探しているのは、現在の PFUser のパスワードが nil かどうかを判断する方法だけのようです。follow メソッドの結果が nil かどうかを確認し、必要なコードを続行することで、これを行うことができます。

if ([[PFUser currentUser] objectForKey:@"password"] == nil)
于 2015-03-18T16:17:52.333 に答える