Android服务:生命周期考虑因素

nol*_*man 5 service lifecycle android

我正在制作一个Android应用程序,它将有两个服务,将每24小时不断发送用户使用手机的数据.

用户应该执行应用程序,切换按钮以启用手机使用记录,然后用户应该可以使用手机正常生活,直到他再次启动应用程序并禁用切换按钮停止记录信息.

  • 我应该考虑服务的生命周期?
  • 当服务应该发送数据时,用户与电话的交互如何?

所有信息都非常感谢,因为我的想法让这一切变得有点不知所措!

非常感谢大家!

Dee*_*eeV 8

可以通过设置菜单随时剪切服务.如果Android决定它需要当前正在运行的活动的资源,它也可以在任何时候被杀死. onDestroy()将被调用,无论如何使用它来存储所需的任何东西.

该服务在后台运行,但通过主UI线程运行.因此,可以通过服务来阻止电话的操作.当手机试图做某事时,它似乎被锁定了.应该在诸如Java计时器,Java线程或AsyncTask之类的线程中使用任何阻塞过程.

在任何给定时间,只能有一个正在运行的服务版本.但是,startService(myService)如果"myService"已经在运行,则调用将基本上覆盖当前正在运行的服务,onStartCommand()并将再次调用.但是,stopService(myService)无论startService(myService)调用多少次,都需要拨打一个电话来阻止它.

stopService(myService)如果服务绑定到任何内容,则不会停止服务.它将等待,直到服务停止之前删除所有绑定.