我有一個應用程序,有時可能需要在執行過程中登錄,我正在計算如何傳遞控制權。對於身份驗證有很多不同的事情要做,所以我有一個名爲Authenticator的實用程序類負責處理所有這些事情。開始登錄活動的正確方法
總之,我想要它,所以應用程序中的所有活動都將能夠調用Authenticator.login()等方法來呈現登錄屏幕,並讓Authenticator處理所有事情。
這裏就是我想的到目前爲止的登錄方法:
public boolean login(Activity context)
{
Intent intent = new Intent(context, Login.class);
context.startActivityForResult(intent, LOGIN_ACTIVITY);
return false;
}
我運行到這個問題,不過,越來越結果從登錄回來,我想知道,如果他們在我將控制權交還給名爲login()的活動之前,按下了取消按鈕或輸入了不正確的密碼。
有onActivityResult()方法,但在Activity類中,而Authenticator不是一個活動。有沒有辦法從一個普通的java類中啓動一個結果的活動?
您能否澄清一下,您要求用戶輸入用戶名和密碼的屏幕是一項活動? – Gopal 2011-06-09 18:53:06
是的,登錄屏幕是一項活動。需要用戶登錄的應用程序中的其他活動要求Authenticator處理。然後,Authenticator會在登錄活動尚未登錄時打開登錄活動。 – Indigenuity 2011-06-09 19:04:49
如果登錄屏幕是活動,那麼您可以setResult從Authenticator類獲得並將其發送回呼叫活動。並在你的通話活動中做相應的處理。該鏈接解釋瞭如何將當前活動的結果傳遞給以前的活動。 [LINK](http://stackoverflow.com/questions/1124548/how-to-pass-the-values-from-one-activity-to-previous-activity)。希望這個幫助。 – Gopal 2011-06-09 19:12:56