我正在阅读以下教程:https://developer.android.com/guide/components/bound-services#Messenger以及https://www.survivingwithandroid.com/android-bound-service-ipc-with-messenger-2/
以了解我们如何通过使用Messenger系统与其他应用程序创建的服务进行通信。
但是我无法理解我们如何像这样调用其他应用程序服务:
switch (respCode) {
case ConvertService.TO_UPPER_CASE_RESPONSE: {
result = msg.getData().getString("respData");
txtResult.setText(result);
}
}
这里convertservice是他们在本教程中使用的服务。但是,如何访问其他应用程序服务的静态变量。因为感觉就像他们创建了本地服务并调用了它。.对此感到抱歉,但我无法理解。
静态变量不需要创建对象,它们始终可用。即使静态变量为final,编译器也会用该变量的值替换静态变量。
如果注意,请在ConvertService.TO_UPPER_CASE_RESPONSE
的类上调用ConvertService
,而不是ConvertService
的对象
class A{
static final String NAME = "name of A";
}
class B{
void fun(String str){
switch(str){
case A.NAME:// compiler changes this line to [case "name of A":]
//...
break;
}
}