0

我正在寻找一种方法来在我的Application实现中获得我的 android 应用程序的意图。类Application本身不getIntent()只是Activity似乎有这个能力。

这样做的原因是我有一个具有多个意图的应用程序,可以称为无状态。但我需要用户登录。所以我想检查用户是否登录,如果没有提示登录对话框,而不在每个活动中破解相同的代码。

4

2 回答 2

1

拥有一些功能的方法Activity是让它们都继承一个公共超类,如下所示:

class LoginActivity extends Activity {
    public void onCreate(Bundle savedInstanceState) {
        if (getIntent().hasExtra(...)) {
            doLogin();
        }
    }

class MyActivity extends LoginActivity {
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // user is now logged in
        setContentView(...);
    }
}

只有你的LoginActivity其他活动可以继承,所以不要在你的AndroidManifest.xml. 你不能进入Intent你的,Application因为这样的事情没有意义。Application只要您的进程正在运行,该对象就存在。在任何给定时间,您的活动可能有零个、一个或多个活动,那么Intent它会返回什么?

不过,我必须承认我对启动Intent与登录有什么关系感到有些困惑。似乎您需要一个具有会话状态/凭据的全局对象,而不是与意图有关的任何事情。

于 2013-04-10T09:10:08.797 回答
0

您需要调用getIntent()Launcher 活动

于 2013-04-10T08:45:11.160 回答