Android 安卓:在不重复alarm manager的情况下,通过服务重复操作的最佳方式是什么?

Android 安卓:在不重复alarm manager的情况下,通过服务重复操作的最佳方式是什么?,android,service,timer,alarmmanager,repeat,Android,Service,Timer,Alarmmanager,Repeat,我想知道在没有重复报警管理器的情况下,通过服务重复操作的最佳方式是什么 我用alarm manager(“不重复”alarm manager)启动一个服务,因为我需要这个服务不会被android中断 此服务在活动时接收一些参数,并应通过重复某些操作来详细说明。如果我使用重复报警管理器,服务将无法正确读取它们 我尝试使用“timer”类,但过了一段时间,Android停止了它,服务也没有做任何事情 有没有一种方法可以在没有安卓系统的情况下,在使用计时器的情况下保持服务的活动状态 非常感谢您可以使您

我想知道在没有重复报警管理器的情况下,通过服务重复操作的最佳方式是什么

我用alarm manager(“不重复”alarm manager)启动一个服务,因为我需要这个服务不会被android中断

此服务在活动时接收一些参数,并应通过重复某些操作来详细说明。如果我使用重复报警管理器,服务将无法正确读取它们

我尝试使用“timer”类,但过了一段时间,Android停止了它,服务也没有做任何事情

有没有一种方法可以在没有安卓系统的情况下,在使用计时器的情况下保持服务的活动状态


非常感谢

您可以使您的服务成为前台服务,如下所示:

final int myID = 1234;
//This constructor is deprecated. Use Notification.Builder instead
        Notification notice = new Notification(R.drawable.ic_launcher, "Started  Alarm", System.currentTimeMillis());

        //This method is deprecated. Use Notification.Builder instead.
        notice.setLatestEventInfo(this, "Alarm.", "Please wait...", pendIntent);

        notice.flags |= Notification.FLAG_NO_CLEAR;
        //notification.flags |= Notification.FLAG_NO_CLEAR;


        startForeground(myID, notification);
然后,只有在没有其他方法且您的服务具有高优先级时,android才会停止您的服务


唯一的问题是你必须发出通知

你是否考虑过使用标记为sticky的服务并在启动时启动?Android可以“中断”它想要的任何东西,不管你喜欢与否。就这点而言,用户可以“中断”他们想要的任何东西,不管你喜欢与否。我不明白这段代码是如何帮助我的。你能给我一个例子吗?在oncreate方法中调用它,然后实现变量“Notification Notification;”(对于整个任务),当你希望你的服务停止在前台时,调用“stopprogent()