这里有另一个问题。
我们的应用程序以标签活动开始。但是,在用户进入选项卡活动以进行工作之前,我们必须检查他们是否已登录。此选项卡活动中的所有活动都需要此登录。因此,我们不是在所有活动中进行此安全检查,而是创建了我们自己的抽象“活动”,并使标签活动扩展了我们的自定义活动。
我们的“安全检查”(只是看他们在首选项中是否有登录密钥和登录标记)放在Abstract活动的onResume()中。如果这些检查中的任何一个返回false,我们将触发登录活动并使用该屏幕中的对话框。 (我们这样做是因为我们不希望用户在未登录时能够看到选项卡上的数据,因此此登录活动是黑色背景,其中包含用户名/密码的对话框)。问题是,抽象活动的onResume()被多次调用,并多次启动Login Activity。
我们已经尝试在xml上为登录活动设置“singleInstance”和singleTask标志,但是活动最终会在它甚至显示在屏幕上之前调用onActivityResult。
答案 0 :(得分:0)
似乎您的安全检查在不应该返回时返回false。使用您描述的安全检查逻辑,如果安全检查返回false,则仅向用户提示登录活动。因此,不应多次提示它们。我会从安全检查开始,确保您正确检查登录状态。
答案 1 :(得分:0)