Android service 只能运行在主线程吗?

关于service的使用 有两种 一种是绑定的 另一种是非绑定的 对于绑定的服务会随着应用的退出而结束,但是对于非绑定的服务,会一直存在于系统中。这时候就不是在主线程了吧? 怎么解释

service 和activity一样都是运行在主线程中,只不过service是没有界面的组件,运行在后台,除了没有界面以外,基本上和acitivity是平级的,
所以应该作为一个activity来看待,阻塞界面的耗时操作,需要另开一个线程来执行。

默认service是在主线程中的,一般是不做耗时操作,系统里提供了一个可以做耗时操作的IntentService ,这个里面是专门用作可以做耗时操作的服务。
绑定和非绑定的区别是绑定的服务是要依赖activity的 有点像fragment的意思,单独启动的的是长期的后台运行。长期后台的service也应该是主线程,
不过是没有界面而已。