问题描述
我正在深入阅读 Android 开源项目中与位置相关的组件。看了Location Engine的源码(https://android.googlesource.com/platform/hardware/qcom/gps/+/android-5.0.0_r2/loc_api/libloc_api_50001/loc_eng.cpp),发现有很多函数调用了LocEngAdapter类的sendMsg()方法。例如,以下代码(从第 1757 行到 1769 行):
int loc_eng_start(loc_eng_data_s_type &loc_eng_data){
ENTRY_LOG_CALLFLOW();
INIT_CHECK(loc_eng_data.adapter,return -1);
if(! loc_eng_data.adapter->getUlpProxy()->sendStartFix(){
loc_eng_data.adapter->sendMsg(new LocEngStartFix(loc_eng_data.adapter));
}
EXIT_LOG(%d,0);
return 0;
}
我深入研究了这个函数,注意到它会调用 msg_q.c 文件(https://android.googlesource.com/platform/hardware/qcom/gps/+/android-5.0.0_r2/utils/msg_q.c)中的 msg_q_snd() 函数,从第 185 行到第 221 行。我只看到这个函数只推送消息进入创建的消息队列。谁能告诉我如何发送消息以及在哪里接收这些消息?如果可能,请向我提供描述这些内容的源代码部分
非常感谢大家!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)