两个或多个 类 可以向同一个 IntentService 发送数据吗?
Can two or more classes send data to the same IntentService?
我是 Android 编程的初学者,我正在阅读有关通过 IntentServices 处理耗时操作的信息。但是,我有这个疑问 -
我可以让两个 classes(比如 A 和 B)发出调用同一个 class (C) 的扩展 IntentService 吗?这可能and/or安全吗?
如果是这样,我如何帮助 IntentService 区分两个调用 classes?
我是这样想的:
public class DoSomething extends IntentService{
@Override
public void onHandleIntent(Intent intent){
Bundle data = intent.getExtras();
String type = data.getString("TagForClass");
if(type.equals("TagForClassA")){
//Do operations for Class A
}
else if(type.equals("TagForClassB")){
//Do operations for Class B
}
}
}
这个方法行得通吗?
是的,多个 class 可以向同一个 IntentService
发送意图。在内部,不同的呼叫由服务一个接一个地排队和处理。
您的用例有些令人担忧。如果您需要根据调用完全切换服务逻辑 class,最好有两个不同的服务,每个服务完成一个定义明确的任务。
我是 Android 编程的初学者,我正在阅读有关通过 IntentServices 处理耗时操作的信息。但是,我有这个疑问 -
我可以让两个 classes(比如 A 和 B)发出调用同一个 class (C) 的扩展 IntentService 吗?这可能and/or安全吗?
如果是这样,我如何帮助 IntentService 区分两个调用 classes?
我是这样想的:
public class DoSomething extends IntentService{
@Override
public void onHandleIntent(Intent intent){
Bundle data = intent.getExtras();
String type = data.getString("TagForClass");
if(type.equals("TagForClassA")){
//Do operations for Class A
}
else if(type.equals("TagForClassB")){
//Do operations for Class B
}
}
}
这个方法行得通吗?
是的,多个 class 可以向同一个 IntentService
发送意图。在内部,不同的呼叫由服务一个接一个地排队和处理。
您的用例有些令人担忧。如果您需要根据调用完全切换服务逻辑 class,最好有两个不同的服务,每个服务完成一个定义明确的任务。