om2*_*345 6 android android-service
我有一些来自我的代码的条件调用,它启动相同的服务,不同的数据值通过bundle传递给该服务.当我检查只满足一个条件时,服务适用于所有条件.但是当2个或更多条件匹配时,它们会调用相同的服务,但捆绑中的数据值不同.问题是当满足此方案时,第一次调用发送的值不会被替换为第二个条件以启动相同的服务.所以服务的反应是错误的.
就是这样
if(some cond)
{
some values in serivce intent bundle.startService(serviceintent1);
}
if(some cond)
{
some data in intent bundle.startService(serviceintent1);
}
Run Code Online (Sandbox Code Playgroud)
满足两个条件时,调用startService两次.但我在第二个条件startService调用中从第一个条件获取值.
在这个问题上帮助我......
onStartCommand 中的返回类型是什么?
您应该阅读有关服务的生命周期的信息。 https://developer.android.com/reference/android/app/Service.html#ServiceLifecycle
我建议使用 IntentService,因为它是为处理异步任务而设计的,它也在工作线程中启动。 http://developer.android.com/reference/android/app/IntentService.html
要真正帮助您,您的服务代码非常重要:)
| 归档时间: |
|
| 查看次数: |
16028 次 |
| 最近记录: |