Android服务是一个单身人士吗?

buc*_*hed 4 android android-service android-lifecycle android-background

如果我在主活动中启动服务,然后退出main并再次创建main,是否会将新服务实例放在其位置?或者它是同一个实例?还是会有两个例子?我需要知道,因为在我的服务中,每次创建新服务时我都会创建一个唯一的ID.

The*_*rer 10

无论何时呼叫startService()startForegroundService()在Android中,框架都会检查该服务是否已在运行.

那么回答你的问题,是的.只有一个实例.

但是,每次调用startService()或,都会调用startForegroundService()Service的onStartCommand()方法.这意味着,如果您的服务中有任何一次性初始化,您不想重新注册,请将其放入onCreate().

  • @TheWanderer的问题是关于在服务创建中创建新的ides.服务可能会停止,新的ID可能会创建,值得知道. (2认同)