Android启动服务而不启动应用程序?

Posted

技术标签:

【中文标题】Android启动服务而不启动应用程序?【英文标题】:Android start service without starting application? 【发布时间】:2012-06-12 07:28:00 【问题描述】:

是否可以在不启动应用程序的情况下启动服务?我需要至少每小时刷新一次我的应用程序的数据,如果我的应用程序中没有用户,我该怎么办?

【问题讨论】:

可能重复 - ***.com/questions/2127044/… 但是是的......安装后没有直接启动服务的方法。我也没有尝试过那里提到的解决方案,所以我无法判断。 【参考方案1】:

您可以在启动时启动您的服务。 您的 androidManifest.xml 文件中需要以下内容:

    在您的 元素中:

    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

    在您的 元素中(确保为您的 BroadcastReceiver 使用完全限定的 [或相对] 类名):

在 MyBroadcastReceiver.java 中:

package com.example;

public class MyBroadcastreceiver extends BroadcastReceiver 
    @Override
    public void onReceive(Context context, Intent intent) 
        Intent startServiceIntent = new Intent(context, MyService.class);
        context.startService(startServiceIntent);
    

【讨论】:

【参考方案2】:

是的,这是可能的。

您可以阅读有关这样做的不同方法here。

【讨论】:

以上是关于Android启动服务而不启动应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

重新启动应用程序而不重新启动服务器?

如何在Android中创建服务,以便在用户与Internet连接时启动

Android应用组件 —— Service

如何按需运行后台服务——而不是在应用程序启动或计时器上

android 一个程序可以启动多少个服务

MySQL服务器启动错误'服务器退出而不更新PID文件'