2.4 NetworkManagementService介绍

最后更新于:2022-04-02 06:01:46

                        根据前文所述,NetworkManagementService(以后简称NMService)将通过"netd"socket和Netd交互。NMService代码非常简单,首先来看其创建的代码,如下所示。

SystemServer.java::ServerThread:run

public void run() {
    ......// 其他Service的创建及相关处理
    try {
        networkManagement = NetworkManagementService.create(context);
        ServiceManager.addService(Context.NETWORKMANAGEMENT_SERVICE, networkManagement);
    } catch ......
    ......
    final NetworkManagementService networkManagementF = networkManagement;
    if (networkManagementF != null) networkManagementF.systemReady();
    ......
}

ServerThread是Android Java Framework的中枢,绝大部分重要Service都在该线程中创建,例如ActivityManagerServie、WindowManagerService、PackageManagerService以及本书要介绍的WifiService、WifiP2pService等。

ServerThread中和NMService相关的重要知识点仅create和systemReady两个函数。下面将一一介绍。


提示 关于ServerThread的详细信息,请读者阅读《深入理解Android:卷Ⅱ》。


';