为了账号安全,请及时绑定邮箱和手机立即绑定

为什么不执行service的onStartCommand()?

为什么不执行service的onStartCommand()?

慕桂英546537 2022-06-10 12:07:02
启动serviceIntent intent = new Intent("com.Sevices.mqtt.ReceivingMessageService");intent.putExtra("message", s);startService(intent);注册<service android:name="com.Sevices.mqtt.ReceivingMessageService"/>service的onStartCommand方法public int onStartCommand(Intent intent, int flags, int startId) {// TODO Auto-generated method stubLog.i("serv1", "onStartCommand");String s = intent.getStringExtra("message");if (s != null && s.length() > 0){Log.i("serv1", "message:"+s);}return super.onStartCommand(intent, flags, startId);}
查看完整描述

1 回答

?
holdtom

TA贡献1805条经验 获得超10个赞

你只是简单的注册了<service android:name="com.Sevices.mqtt.ReceivingMessageService"/>
并没有给这个service起个名字,所以Intent intent = new Intent("com.Sevices.mqtt.ReceivingMessageService");

这样调用是启动不了你的service的,请改为类似如下:
Intent intent = new Intent(MainActivity.this,com.Sevices.mqtt.ReceivingMessageService.class);

或者在manifest中加个别名:
<service android:name="com.Sevices.mqtt.ReceivingMessageService">
<intent-filter>
<action android:name="com.Sevices.mqtt.ReceivingMessageService" />
</intent-filter>
</service>

查看完整回答
反对 回复 2022-06-14
  • 1 回答
  • 0 关注
  • 568 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号