代码之家  ›  专栏  ›  技术社区  ›  JohnnyLambada

Android服务-它能弹出一个活动吗?

  •  0
  • JohnnyLambada  · 技术社区  · 14 年前

    我有三个独立的应用程序A、B和C。它们都使用服务S。当A、B或C连接到服务S和服务S时必须启动,它必须使用表单F从用户收集凭据。

    我希望用户体验如下:

    1. 在Android主菜单中,用户点击其中一个应用程序:A、B或C。
    2. 表单F出现是因为服务尚未启动。
    3. 用户填写表格F并点击OK。
    4. 验证发生。
    5. 如果验证凭据成功,则显示所选应用程序(A、B或C)中的相应活动。
    6. 在成功验证之后,任何启动的后续应用程序都不需要进行身份验证,它们只需要从该应用程序中的活动开始。
    7. 如果验证失败,并且用户按下后退按钮,则主菜单再次出现。

    考虑到所有这些,我认为我希望服务在必要时启动凭证表单——服务可以这样做吗?如果不是,那么还有什么替代方法来实现这一点呢?

    2 回复  |  直到 7 年前
        2
  •  1
  •   JDC    7 年前

    服务不应该直接启动活动。这在通知文档中有明确说明。你可以在这里看 link (请参阅第二段)。

    您描述的场景可以另一种方式处理:

    1. 向服务添加方法 isValidated() 如果 用户已经过验证。
    2. 活动A、B或C应 使用 IS-ValueDead() 首先检查用户是否被验证或 不是。如果不是,则活动应显示“从F开始”。