android\frameworks\av\media\mediaserver\main_mediaserver.cpp
int main(int argc __unused, char** argv)
{
// all other services
sp<ProcessState> proc(ProcessState::self());
sp<IServiceManager> sm = defaultServiceManager();
ALOGI("ServiceManager: %p", sm.get());
AudioFlinger::instantiate();
MediaPlayerService::instantiate();
CameraService::instantiate();
AudioPolicyService::instantiate();
SoundTriggerHwService::instantiate();
registerExtensions();
ProcessState::self()->startThreadPool();
IPCThreadState::self()->joinThreadPool();
}
本文详细解析了Android系统中MediaServer的启动流程。通过分析main_mediaserver.cpp源代码,展示了核心组件如AudioFlinger、MediaPlayerService等的实例化过程,并介绍了线程池的启动与加入。
1243

被折叠的 条评论
为什么被折叠?



