Service 中onStartCommand方法参数的含义
2016-01-25 20:24
246 查看
Service中onStartCommand(Intent intent, int flags, int startId)这三个参数的含义
intent就是startService(Intent
intent)中的intent;
flags代表flags表示启动服务的方式:,
START_FLAG_REDELIVERY, or START_FLAG_RETRY.
START_FLAG_REDELIVERY:你实现onStartCommand()来安排异步工作或者在另一个线程中工作,需要使用START_FLAG_REDELIVERY来
让系统重新发送一个intent。这样如果你的服务在处理它的时候被Kill掉, Intent不会丢失.
START_FLAG_RETRY:表示服务之前被设为START_STICKY,则会被传入这个标记。
startId的值是对这个service请求的activity或者其他实体的编号。
Android开发的过程中,每次调用startService(Intent)的时候,都会调用该Service对象的onStartCommand(Intent,int,int)方法,然后在onStartCommand方法中做一些处理。然后我们注意到这个函数有一个int的返回值,这篇文章就是简单地讲讲int返回值的作用。
从Android官方文档中,我们知道onStartCommand有4种返回值:
START_STICKY:如果service进程被kill掉,保留service的状态为开始状态,但不保留递送的intent对象。随后系统会尝试重新创建service,由于服务状态为开始状态,所以创建服务后一定会调用onStartCommand(Intent,int,int)方法。如果在此期间没有任何启动命令被传递到service,那么参数Intent将为null。
START_NOT_STICKY:“非粘性的”。使用这个返回值时,如果在执行完onStartCommand后,服务被异常kill掉,系统不会自动重启该服务。
START_REDELIVER_INTENT:重传Intent。使用这个返回值时,如果在执行完onStartCommand后,服务被异常kill掉,系统会自动重启该服务,并将Intent的值传入。
START_STICKY_COMPATIBILITY:START_STICKY的兼容版本,但不保证服务被kill后一定能重启。
intent就是startService(Intent
intent)中的intent;
flags代表flags表示启动服务的方式:,
START_FLAG_REDELIVERY, or START_FLAG_RETRY.
START_FLAG_REDELIVERY:你实现onStartCommand()来安排异步工作或者在另一个线程中工作,需要使用START_FLAG_REDELIVERY来
让系统重新发送一个intent。这样如果你的服务在处理它的时候被Kill掉, Intent不会丢失.
START_FLAG_RETRY:表示服务之前被设为START_STICKY,则会被传入这个标记。
startId的值是对这个service请求的activity或者其他实体的编号。
Android开发的过程中,每次调用startService(Intent)的时候,都会调用该Service对象的onStartCommand(Intent,int,int)方法,然后在onStartCommand方法中做一些处理。然后我们注意到这个函数有一个int的返回值,这篇文章就是简单地讲讲int返回值的作用。
从Android官方文档中,我们知道onStartCommand有4种返回值:
START_STICKY:如果service进程被kill掉,保留service的状态为开始状态,但不保留递送的intent对象。随后系统会尝试重新创建service,由于服务状态为开始状态,所以创建服务后一定会调用onStartCommand(Intent,int,int)方法。如果在此期间没有任何启动命令被传递到service,那么参数Intent将为null。
START_NOT_STICKY:“非粘性的”。使用这个返回值时,如果在执行完onStartCommand后,服务被异常kill掉,系统不会自动重启该服务。
START_REDELIVER_INTENT:重传Intent。使用这个返回值时,如果在执行完onStartCommand后,服务被异常kill掉,系统会自动重启该服务,并将Intent的值传入。
START_STICKY_COMPATIBILITY:START_STICKY的兼容版本,但不保证服务被kill后一定能重启。
相关文章推荐
- 《wireshark(版本1.99.8)抓包(2)》
- Windows10中的IIS10安装php manager
- ImageView 相关
- edoCyarG.89
- HDU【1556】Color the ball
- KMP
- jstl 和el表达式合作格式化时间
- LeetCode Search in Rotated Sorted Array II
- 图片擦除-美女效果
- Android之WebRTC实现
- OpenStack Ceilometer监控模块没有数据
- Archive打包发布测试
- leetcode49. Group Anagrams
- idc
- php函数:PHP pathinfo() 函数
- C实现单链表的常见功能
- 关于 Bundle
- 经典博客收藏
- 理解选择排序
- DeepLearningToolBox学习——DBN(Deep Belief Net )