私はAndroidとJavaに自己学習していますが、Android Javaで利用できるセッション変数はありますか?もしそうなら、その目的とプロセスについて教えてください。可能であればサンプルを使って。
貴重なお時間をいただきありがとうございます!
私はAndroidとJavaに自己学習していますが、Android Javaで利用できるセッション変数はありますか?もしそうなら、その目的とプロセスについて教えてください。可能であればサンプルを使って。
貴重なお時間をいただきありがとうございます!
セッションについて話すとき、セッションとはどういう意味ですか
ログイン資格情報やユーザー情報を保存するためにセッションについて話す場合。
かもしれませんSharedPreferences
。
また、インターネットからダウンロードしたデータや、アプリケーション全体で共有することを目的とした別のアプリケーション関連データなどの一時的なデータストレージについて話す場合は、Application
クラス、static
変数、IOFile
などSqlite
の多くの手段を使用して共有できます。
Androidには、私が知っているセッション変数がありません。ただし、AndroidアプリがWebサーバーと通信している場合、アプリはWebサーバー上のPHPセッション変数を利用できます。方法は次のとおりです。
1)Androidアプリはユーザーのログイン資格情報をWebサーバー(www.your-web-server.com/login.php)に送信します
。2)login.phpは資格情報を確認しsession_start()
てから、セッションを開始するために呼び出します。
3)次に、login.phpは次のようなものを呼び出します:my_current_session = session_id();
現在のセッションのセッションIDを取得するため。
4)login.phpは、セッションID(my_current_session
)をAndroidアプリに送り返します。セッションIDをJSONでエンコードされた文字列(json_encode)としてエコーすることをお勧めします。
5)AndroidアプリはセッションIDをローカルに保存します。他の回答のいくつかが示唆しているように、SharedPreferencesに保存できます。または、デバイスのローカルのSQLiteデータベースに保存することもできます。6)その後、リクエストヘッダーに
セッションIDを含めることができますAndroidアプリからWebサーバーへの今後のすべてのGETおよびPOSTリクエストの Webサーバーで実行されているPHPは、セッションIDを認識し、関連するセッション変数を使用可能にします。
なぜそれが必要なのですか..アプリケーションの起動時に初期化されるアプリケーション変数があります。それを達成するためにシングルトンクラスを作成することもできます。
セッションに保存された値に使用できるAPIはありませんが、SharedPreferencesを使用するか、セッションに保存する値を保存できる静的変数を使用できます。
SharedPreferencesを使用します。
あなたは例を見つけることができます