likes
comments
collection
share

面试准备-打卡第十天-Android篇

作者站长头像
站长
· 阅读数 2

Service是什么?

Service作为Android系统的四大组件之一,是一种可以在后台长时间运行操作而没有用户界面的应用组件

Service和Thread的区别?

Thread是程序运行的最小单元即线程,可以执行异步长时间耗时的操作

Service是android中的组件,是运行在主线程上的,是要依托android程序运行的,所以不能做耗时操作

Android中,Service和Activity的区别有哪些?

  • 大部分情况下,Service用来执行后台的、耗时的、重要的任务,当一个进程启动了Service后,进程的优先级变高了,系统除非在非常极端的情况下,不会杀掉该进程,Activity的话,不具备这样的特性
  • Activity和Service的生命周期不同,Activity处于哪个生命周期由系统控制,Service是由程序控制的,Service不能自己启动,而且不与用户交互
  • Service能在后台运行,Activity不行

Service的启动方式有那两种?区别是什么?

Service的启动方式有两种,一种是startService(),一种是bindService

  • startService(),启动完之后该service就在后台运行,其生命周期跟启动它的Context没有任何关系,也不能跟Context通讯
  • binderService(),启动之后生命周期跟启动它的Context有关,比如Activity、Fragment、Service等,在Context解绑后,如果该Service没有任何绑定后该Service也就结束

Service的声明周期?

Service的生命周期与启动方式有关

startService的生命周期:onCreate -> onStartCommand() -> onDestory()

bindService的生命周期:onCreate -> onBind() -> onUnbind() -> onDestroy()