我试图搜索许多讨论线程,但我不清楚这件事。作为新手,我无法理解一半的事情,因此我要问直接的问题。
对于我的应用程序,当单击最后一个按钮(开始分析按钮)时,我希望启动一个服务,服务内部要完成的分析大约需要 2-3 分钟,一旦分析完成,我希望服务自动启动我的主要活动中的结果活动页面。
怎样才能完成这项任务?而且我还想知道应用程序是否会在后台运行并且在暂停时不会被android自动关闭?
谢谢
Android服务的定义是它可以在后台运行,没有UI。所以是的,这是可能的。但是,Service 本身不会自动在后台运行(它在主线程上运行)。相反,您想要做的可能是这样的:
请注意,如果用户不使用您的应用程序,则启动新 Activity 被认为是非常糟糕的做法。如果您正在使用聊天应用程序并且随机应用程序开始接管,那就太可怕了......相反,一个更好的主意是在某处粘贴一个标志,然后在onResume()
您的其他 Activity 的处理程序中,检查任务是否完成,如果所以将用户发送到另一个活动。