当前位置:首页 > 技术心得 > 正文内容

android Service : onStartCommand intent为null

xjtudll11年前 (2016-02-19)技术心得11840

参考资料:

http://hold-on.iteye.com/blog/2024926

问题:

service中加入onStartCommand之后,不定期crash。

分析:

经查看onStartCommand中代码,只有intent为空才可能报NullPointException 。

intent的参数是null,原因是这个intent参数是通过startService(Intent)方法所传递过来的,但是如果Service在你的进程退出后有可能被系统自动重启,这个时候intent就会是null.

为什么service会自动重启呢?

onStartCommand里return START_STICKY,系统内存不足杀掉service之后,若内存足够,则会自动重启service。

解决方法:

在使用intent前需要判断一下是否为空。

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://www.xjtudll.cn/Exp/388/

标签: Android
分享给朋友:

“android Service : onStartCommand intent为null” 的相关文章

Altium在生成PCB时,怎样取消掉room空间?

Altium在生成PCB时,怎样取消掉room空间?

从原理图生成PCB时 总会生成一个或多个网络区域 该区域ROOM在一般的情况下没有什么作用 反而会对我们的设计会带来一些不便 那怎么样才能取消此区域(room空间)呢! 方法一 在导入到pcb中时 我们执行变更的 选项栏中将room的选项的勾去掉 这样导入pcb时就不会把room导入了 方法二...

Mac OS X:如何监测系统时间变更

目的:   当系统时间变更时,需要在app中知道。 其中系统时间变更包括时区,年月日时分秒等的变动,包括手动和自动修改 方法: 使用NSSystemClockDidChangeNotification Mac 10.6开始支持 Apple added in NSSystemClockDi...

金蝶K3能正常登录,点击任何功能都卡死未响应

重启一下打印服务即可。 【原因】 一般是由于该电脑上的print spooler服务正在运行中导致; 【操作步骤】 可在电脑桌面上找到左下角【开始】→【控制面板】→【管理工具】,再打开【服务】图标,在所有的服务中找到print spooler这个服务,然后右键选择“停...

NPOI导出Excel表 如何实现短日期格式

https://q.cnblogs.com/q/43888/ 问题: 因为导出EXCEL 档日期格式永远都是 2012-11-22 14:51:11 ,而我们希望结果永远只是 2012-11-22, 我修改完的代码如下: case "System.DateTime": //...

Google地图测距

Google地图测距

百度地图上有个测距功能,还是挺好用的。但百度地图有个缺点,没法看国外的东西,国外地图只显示了国家和首都,信息太匮乏了。 今天要测量欧洲两个城市的直线距离,百度不好使了,Google上默认又没有测距功能,搜了半天,找到了方法。 步骤如下: 1、在浏览器中输入http://ditu.google.cn/...

手表EL升压电路分析

手表EL升压电路分析

前言:折腾了许久的EL升压电路,总算是搞清楚原理了。 EL(Electroluminescence)发光屏是一种电致发光材料发光屏,在结构上,电致发光材料夹在两个电极之间。它的上电极是一种透明的导电膜,称为ITO膜(Indium Tin Oxide film),用于透射光线,而下电极是第二电极,其...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。