【问题标题】:How can I make my android app run on the background?如何让我的 android 应用程序在后台运行?
【发布时间】:2011-06-19 18:05:04
【问题描述】:

我构建了一个收集有关电池数据的应用程序。为了收集这些数据,我需要我的应用程序在后台运行,以便能够收集这些数据。 我该怎么做?

【问题讨论】:

    标签: android background


    【解决方案1】:

    您需要将您的活动更改为Service

    【讨论】:

    • 你能说得更具体些吗?我想创建一个收集电池信息的应用程序(一直)。我能怎么做?当我试图阅读你给我的链接时,我迷失在他们的所有信息中......
    • 没有窗口的上下文称为Service。您需要阅读有关服务的更多信息。
    • 也许我解释得不够充分。我需要收集信息,当我打开应用程序时,它会显示它收集的信息。
    • 您使用服务在后台收集信息,然后保存到数据库。当用户打开您的应用程序时,它将获得一个屏幕,其中包含从数据库中检索到的数据。
    • @Pentium10 嘿,我如何在开机时启动我的后台服务?
    【解决方案2】:

    如果您出于某种原因反对使用服务,则可以将其关闭,然后在用户将应用程序调用到前台时获取数据。

    您可以使用 onStart、onPause、onResume 函数以及使应用程序成为单个实例,这样当您再次运行它时,它会从内存中提取它(假设 Android 出于某种原因不会杀死它)。

    您可以使用持续通知来防止它在后台被杀死并移动TaskToBack。

    但正如 pentium10 所说,处理后台进程的预期方法是通过一个服务来收集您正在寻找的数据,然后当活动回到前面时,它会从服务中获取数据并显示它。

    【讨论】:

      【解决方案3】:
       - @Override public int onStartCommand(Intent intent, int flags, int
         startId) {
             handleCommand(intent);
             // We want this service to continue running until it is explicitly
             // stopped, so return sticky.
             return START_STICKY; }
      

      【讨论】:

        猜你喜欢
        • 2016-03-25
        • 1970-01-01
        • 2021-12-22
        • 1970-01-01
        • 2022-11-23
        • 2020-08-08
        • 1970-01-01
        • 1970-01-01
        • 2020-09-27
        相关资源
        最近更新 更多