我想创建一个服务,当用户使用“后退”按钮离开应用程序时,该服务将继续运行。我是通过在这样的Angular服务中使用setInterval来实现的:
export class StartupService {
public id: string;
constructor() {
//create a random id for logging
this.id = Math.random().toString(36).substr(2, 5);
setInterval(() => {
console.log(this.id + " StartupService " + new Date());
},1000);
}
}
但是,当用户恢复应用程序时,将创建此服务的另一个实例。但是,两个setIntervals都在运行(每秒2条消息以不同的ID打印在屏幕上,预期单个ID每秒以1x打印)。因此,初始服务仍位于内存中的某个位置,可以重用,而不必创建新服务。
是否可以使用NativeScript和Angular实现此方案?