Android服务-应用程序关闭后无法停止

叶夫根尼·坦切夫(Evgeni Tanchev)

我的问题是以下。我创建了即使在应用程序关闭后仍能赢的android服务。当应用程序处于活动状态时,我可以扫描该服务,并且可以看到它正在运行,并且可以停止它。当我完全关闭活动并启动应用程序时,我再次扫描活动服务,但在列表中找不到它。因此,如何在程序重新启动后停止服务,以便我可以指示服务是否仍在后台运行。我使用下面的方法检查服务。

public void IsServiceRunning()
    {
        ActivityManager activityManager = (ActivityManager)GetSystemService(Context.ActivityService);
        var list = activityManager.GetRunningServices(int.MaxValue);

        foreach(var item in list)
        {

            Toast.MakeText(ApplicationContext, item.Service.ClassName + " " + item.Started + " " + item.Service.Class, ToastLength.Short).Show();
            Log.Debug("++++++++++++++++++++++++++++++++++ ",  item.Service.ClassName + " " + item.Started + " " + item.Service.Class);
            if ( item.Service.ClassName.Contains("MyService"))
            {
                MessagingCenter.Send<string>("true", "CheckRunningService");
                //Toast.MakeText(ApplicationContext, item.Service.ShortClassName.ToString(), ToastLength.Short).Show();
                return;
            }



        }


        MessagingCenter.Send<string>("false", "CheckRunningService");

    }

服务编号

class MyService : Service 
{

    SmsBroadcastRceiver sms;
    public override void OnCreate()
    {
        base.OnCreate();

    }

    [return: GeneratedEnum]
    public override StartCommandResult OnStartCommand(Intent intent, [GeneratedEnum] StartCommandFlags flags, int startId)
    {

        //Toast.MakeText(this, "MyService Started", ToastLength.Long).Show();
        sms = new SmsBroadcastRceiver();
        RegisterReceiver(sms, new IntentFilter("SMS_RECEIVED"));


        return StartCommandResult.NotSticky;

    }


    public override void OnDestroy()
    {
        UnregisterReceiver(sms);
        StopSelf();

        //Toast.MakeText(this, "MyService Stopped", ToastLength.Long).Show();

        base.OnDestroy();

    }

    public override IBinder OnBind(Intent intent)
    {

        return null;
    }


}
叶夫根尼·坦切夫(Evgeni Tanchev)

我想我发现了为什么一旦我的应用程序停止我就找不到它了。如文档中所述:

getRunningServices(int maxNum)在API级别26中已弃用此方法。从Build.VERSION_CODES.O开始,该方法不再对第三方应用程序可用。为了向后兼容,它仍将返回调用者自己的服务。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

停止服务并关闭应用程序

来自分类Dev

Android:关闭应用程序后,NSD服务仍然可用

来自分类Dev

Android:关闭我的应用程序后启动我的服务

来自分类Dev

Android:关闭应用程序后,NSD服务仍然可用

来自分类Dev

Android:关闭我的应用程序后启动我的服务

来自分类Dev

Android:关闭应用程序后服务崩溃

来自分类Dev

关闭后停止处理程序,然后在Android中打开应用程序

来自分类Dev

启用特定服务后在引导后运行的C ++应用程序无法通过systemctl stop停止

来自分类Dev

使用任务管理器关闭应用程序时停止Android服务

来自分类Dev

重新打开和关闭应用程序时,Android服务停止

来自分类Dev

重新打开和关闭应用程序时,Android服务停止

来自分类Dev

调用System.exit(0)后,Android应用程序无法关闭

来自分类Dev

关闭应用程序后,无法在Xamarin.Android中接收远程通知

来自分类Dev

关闭应用程序后,无法在Xamarin.Android中接收远程通知

来自分类Dev

android:服务成员变量在应用程序关闭后变为空

来自分类Dev

注销应用程序后如何停止后台服务?

来自分类Dev

无法使用程序关闭 Android 应用程序

来自分类Dev

关闭Android应用程序后,HashMap中的数据

来自分类Dev

捕获异常后如何关闭android应用程序

来自分类Dev

关闭后自动重新打开Android应用程序

来自分类Dev

构建后,Cordova Android应用程序强制关闭

来自分类Dev

按下设置后,Android应用程序关闭

来自分类Dev

关闭后,Android提醒应用程序如何工作

来自分类Dev

Android 应用程序打开后立即关闭

来自分类Dev

在 android 应用程序关闭后使用侦听器

来自分类Dev

错误关闭应用程序以启动Android服务

来自分类Dev

单击TextView后,Android应用程序停止工作

来自分类Dev

Android Fragment-关闭应用程序后应用程序崩溃

来自分类Dev

无法启动我的Android应用程序。“关闭VM”错误

Related 相关文章

  1. 1

    停止服务并关闭应用程序

  2. 2

    Android:关闭应用程序后,NSD服务仍然可用

  3. 3

    Android:关闭我的应用程序后启动我的服务

  4. 4

    Android:关闭应用程序后,NSD服务仍然可用

  5. 5

    Android:关闭我的应用程序后启动我的服务

  6. 6

    Android:关闭应用程序后服务崩溃

  7. 7

    关闭后停止处理程序,然后在Android中打开应用程序

  8. 8

    启用特定服务后在引导后运行的C ++应用程序无法通过systemctl stop停止

  9. 9

    使用任务管理器关闭应用程序时停止Android服务

  10. 10

    重新打开和关闭应用程序时,Android服务停止

  11. 11

    重新打开和关闭应用程序时,Android服务停止

  12. 12

    调用System.exit(0)后,Android应用程序无法关闭

  13. 13

    关闭应用程序后,无法在Xamarin.Android中接收远程通知

  14. 14

    关闭应用程序后,无法在Xamarin.Android中接收远程通知

  15. 15

    android:服务成员变量在应用程序关闭后变为空

  16. 16

    注销应用程序后如何停止后台服务?

  17. 17

    无法使用程序关闭 Android 应用程序

  18. 18

    关闭Android应用程序后,HashMap中的数据

  19. 19

    捕获异常后如何关闭android应用程序

  20. 20

    关闭后自动重新打开Android应用程序

  21. 21

    构建后,Cordova Android应用程序强制关闭

  22. 22

    按下设置后,Android应用程序关闭

  23. 23

    关闭后,Android提醒应用程序如何工作

  24. 24

    Android 应用程序打开后立即关闭

  25. 25

    在 android 应用程序关闭后使用侦听器

  26. 26

    错误关闭应用程序以启动Android服务

  27. 27

    单击TextView后,Android应用程序停止工作

  28. 28

    Android Fragment-关闭应用程序后应用程序崩溃

  29. 29

    无法启动我的Android应用程序。“关闭VM”错误

热门标签

归档