我正在使用重复闹钟rtc唤醒来每小时呼叫我的服务。该服务发送通知。我面临的问题是,每当我进入主页并按下方形按钮并从应用程序堆栈关闭我的应用程序时,我相信我的服务的新实例正在创建。我的应用程序是一个时间表,所以每当发生这种情况时,通知都会从我必须参加的第一堂课开始,而不是从那里继续。任何人都可以告诉我如何防止创建新实例。
答案 0 :(得分:0)
我面临的问题是每当我进入主页并按下方形按钮并从应用程序堆栈关闭我的应用程序时,我相信我的服务的新实例正在创建
您的流程无法保证在警报之间存活。
我的应用程序是一个时间表,所以每当发生这种情况时,通知都会从我必须参加的第一堂课开始,而不是从那里继续。
您的服务需要将其信息保存在数据库SharedPreferences
,其他形式的文件中,或者可能在Internet上。
任何人都可以告诉我如何防止创建新实例。
你不能。用户可以在用户想要的时候摆脱您的服务,Android可以终止您的进程以释放其他应用程序的系统RAM。 Only have your service running when it is actively delivering value to the user。使用文件或其他持久性存储来在服务运行之间保存数据。