2015-05-08 84 views
1

我的Android應用程序中有一個登錄屏幕,登錄後主屏幕出現。登錄後從堆棧中刪除登錄屏幕

成功登錄後不允許登錄屏幕再次出現的最合適方法是什麼?

我們是否應該在登錄活動的onCreate中進行檢查。 設置適當的標誌到主屏幕的意圖

  • 如果這不合適什麼將是最合適的標誌爲此。

另一個問題是,從主屏幕我們有鏈接到應用程序的各個部分。 用戶可以將應用程序保留在應用程序任何子部分的任何頁面。 例如: 用戶可以通過使用主屏幕中的產品部分查看各種產品。

  • 是否有可能始終從此主屏幕開始,即使在某些子部分活動中存在某些錯誤時也是如此。例如: 如果任何產品頁面崩潰,應用程序將返回到產品的起始頁面,而我們要求它從主屏幕開始。

  • 是否可以通過活動標籤中的某些標誌設置或我們是否需要檢查onCreate中的某些屬性並相應地導航回主屏幕。

請更新。

感謝

+0

使用'SharedPreference'在成功地登錄的時間。 –

+0

按照這個,並得到一些想法http://www.tutorialspoint.com/android/android_session_management.htm –

回答

0

您可以使用這種意圖旗result.in我的應用我用下面的代碼 -

Intent i = new Intent(mContext, DashBoardActivity.class); 
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(i); 
finish(); 

它登陸後,如果用戶按下後退按鈕出現這樣的登錄界面。 還在SharedPreference中設置一個標誌,說is_user_login = true,並在下一次啓動應用程序檢查首選項值並根據它執行操作。 希望它能幫助你。

0

成功登錄後不允許登錄屏幕再次出現的最佳方式是什麼?

您可以使用flag或使用sharedPreference來維護登錄狀態。

即使在某些小節活動中出現錯誤,是否可以始終從此主屏幕開始。例如:如果任何產品頁面崩潰,應用程序將返回到產品的起始頁面,而我們要求它從主屏幕開始。

做適當的異常處理,並在catch塊重定向到main screen,並呼籲finish()

0

使用該link

添加到您的MainScreen防止登錄屏幕刪除此行super.onBackPressed();

@Override 
    public void onBackPressed() { 
     moveTaskToBack(true); 

    } 

如有問題只是ping通我