我正在寻找一种方法来在我的Application实现中获得我的 android 应用程序的意图。类Application本身不getIntent()只是Activity似乎有这个能力。
这样做的原因是我有一个具有多个意图的应用程序,可以称为无状态。但我需要用户登录。所以我想检查用户是否登录,如果没有提示登录对话框,而不在每个活动中破解相同的代码。
我正在寻找一种方法来在我的Application实现中获得我的 android 应用程序的意图。类Application本身不getIntent()只是Activity似乎有这个能力。
这样做的原因是我有一个具有多个意图的应用程序,可以称为无状态。但我需要用户登录。所以我想检查用户是否登录,如果没有提示登录对话框,而不在每个活动中破解相同的代码。
拥有一些功能的方法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与登录有什么关系感到有些困惑。似乎您需要一个具有会话状态/凭据的全局对象,而不是与意图有关的任何事情。
您需要调用getIntent()Launcher 活动