2017-04-20 12 views
0

私はソーシャルメディアのAndroidアプリを作っています。ユーザーは、初めてアプリケーションを開くときにサインアップまたはログインする必要があります。さて、明らかに、私はそのログイン情報を保存して、ユーザーが彼がアプリを起動するたびにログインする必要がないようにしたい。私は単純にSharedPreferencesにログインの詳細を保存することができますが、私はSyncAdapterについて聞いたことがあります。これはSyncAdapterの主な目的です(バックグラウンド同期のためのものでもあります)。バックグラウンド同期は必要ありません。 SyncAdapterはどのように機能しますか?私はオンラインデータベース上のデータを保存するためにJava Serverを使用しているので、どのようにoAuthのた​​めにJavaサーバーを構成することができますか。 I 他のネットワーク(Facebook、Twitterなど)からのデータにアクセスしたい。私は、ユーザーが電子メール、ユーザー名、およびパスワードを使用してサインアップするようにします。それ以外は必要ありません。 SharedPreferencesはより良いオプションですか?私のアプリケーションにSyncAdapterを使用する必要がありますか?

答えて

0

ユーザーのログイン情報を保存する必要はありませんSharedPreferencesあなたのサーバーにユーザーのログインを許可し、ログインが成功したら、アンドロイドアプリにtokenを返します。そのトークンをSharedPreferencesに保存してから、有効なトークンがある場合はsharedPreferencesをチェックインする必要があります。有効なトークンがある場合、tokenが無効な場合はユーザーにアプリを使用させ、nullはログイン画面にユーザーをリダイレクトします。 これがあなたに多少役立つことを願っています。

更新 JWTトークンを使用できます。そのための有用なリソースはhttps://auth0.com/blog/refresh-tokens-what-are-they-and-when-to-use-them/です。 JWT認証フローを使用してREST APIを探索する必要があります。

+0

私はちょっと助けてくれます。トークンの有効性を確認するにはどうすればよいですか?それを行うための標準的な方法はありますか? –

+0

@SakshamChawla私は答えを更新しました –

0

静かにここで質問している多くの質問があります。

第1回:ユーザーに再度ログインするように要求しないようにログイン状態を保存します。

はい、あなたはSharedPreferences

第二に、これを行うことができますどのようにアダプタの作業を同期しますか?

開発者サイトでこれについて非常に明確に説明しています。あなたは見ることができますhere

第3回:アプリをJavaサーバーを呼び出すように設定するにはどうすればよいですか?

単純にAsyncTaskを使用してAPIを呼び出すことができます。または、より良いパフォーマンスとエラーフリーのコールを使用することができますRetrofit

私の答えが助けてくれることを願っています。

+0

SharedPreferencesにログイン情報を保存する方法は私の質問でした。ユーザー名とパスワードの保存は明らかに安全ではありません。 HTTP接続にAsyncTaskを使用する方法を知っています。私の質問は、トークンを送信する方法、またはサーバー上でoAuthを使用する方法でした。 –

関連する問題