私は最初のネットワーキングアプリケーションを開発していますが、解決策を見つけることができない小さな問題があります。SharedPreferencesとの論理エラー、およびバンドルを渡す
私の主な活動であるスタート画面には、ログインするオプションがあります。あなたがログインしている場合、私のログインクラスはインテントごとのデータをメインアクティビティに渡しますので、UIを更新できます。これは私の主な活動です:
// Just to make sure Loginstatus is false on first run
loginstatus = false;
//Get saved data from SharedPreferences
loginstatus = PreferenceData.getUserLoggedInStatus(this);
Log.d("Loginstatus",""+loginstatus);
if (extras != null) {
login = extras.getString("loginy");
idt = extras.getString("id");
name = extras.getString("name");
vorname = extras.getString("vorname");
email = extras.getString("login");
zsm = vorname + " " + name;
}
else {
// Take saved Data instead the Bundle Data form first Login
idt = PreferenceData.getUSERID(this);
name = PreferenceData.getNachname(this);
vorname = PreferenceData.getVorname(this);
email = PreferenceData.getLoggedInEmailUser(this);
}
もちろん、余分なスタートアップ時にNULLです。ログインが成功した場合、私のログインクラスはデータを渡し、私のメインアクティビティは再び呼び出されるので、エクストラはNULLではなく、その情報でUIを更新することができます。また、ログインが真であればSharedPreferncesにデータを保存します。
問題は、私のアプリケーションを完了するとログイン状態を保存したいのです。だから私は私のアプリケーションを再開し、私は私のSharedPreferncesデータを使用したいと思うが、何とかエクストラはまだNULLではないと私はそれを修正する方法を見つけることができません。