您好我有一個應用程序,嚴格要求出現「登錄」,即使應用程序被破壞。如果應用程序被破壞,那麼以後重新加載(如果以前登錄),登錄屏幕應該直接跳過到用戶以前查看的頁面。 (我已經處理所有會話相關的變量)即使在應用程序被破壞的情況下保持'登錄'
我試過使用Shared Preferences
但如果我手動銷燬應用程序它會回到登錄屏幕,我不能有這種情況發生。
我試圖存儲偏好數據庫手動(這可能是什麼呢Shared Preferences
呢?),但它仍然加載過程的登錄活動,因爲這是我第一次加載活動。因此,這個問題更多的是保持用戶始終使用哪個活動的偏好,然後直接加載到此onResume()
。
我的問題:有沒有人處理過這種情況?我應該如何處理預加載活動。我一直在想,當我在登錄屏幕中加載我的偏好時,我會檢查前面的活動首選項,並簡單地加載(假設用戶已登錄)。
有沒有更好的方法來解決這個問題?是否有一種更加原生的方式來動態加載適當的Activity啓動?
任何幫助,非常感謝
編輯:好吧剛剛發佈此之後,我意識到我真正要做的就是添加一個檢查中的onResume相應的會話變量是否設置。然後加載到活動中,實際上就像Akbari在下面所說的那樣。我已將我的偏好設置類重新轉換爲使用標準Android SharePreferences
,現在它完美地工作。感到高興:)
簡單地做這樣的事情:
// load preferences
preferences.readPreferences();
// if preferences exist load straight to RecordActivity
if (application.currentSessionId!=null) {
Intent i = new Intent(getApplicationContext(), RecordActivity.class);
startActivity(i);
}
實際上,在我發佈該問題後,我意識到它比我想象的要簡單得多。我基本上按照你在這裏所說的來實施。歡呼:) – wired00 2013-03-01 06:46:41
奇妙的是,我剛剛改變了我的偏好類回到使用'SharePreferences'而不是手動數據庫保存,它仍然工作完美。非常滿意這一結果 – wired00 2013-03-01 07:00:03