2.4 NetworkManagementService介绍
根据前文所述,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:卷Ⅱ》。