源代码位于:
frameworks/base/services/java/com/android/server/SystemServer.java。
frameworks/base/services/jni/com_android_server_SystemServer.cpp。
- Android FactoryTest框架
- factoryTest
- SystemProperties.get("ro.factorytest")
- FACTORY_TEST_OFF
- FACTORY_TEST_LOW_LEVEL
- FACTORY_TEST_HIGH_LEVEL
- factoryTest
|
boolean disableStorage = SystemProperties.getBoolean("config.disable_storage", false); boolean disableMedia = SystemProperties.getBoolean("config.disable_media", false); boolean disableBluetooth = SystemProperties.getBoolean("config.disable_bluetooth", false); boolean disableTelephony = SystemProperties.getBoolean("config.disable_telephony", false); boolean disableLocation = SystemProperties.getBoolean("config.disable_location", false); boolean disableSystemUI = SystemProperties.getBoolean("config.disable_systemui", false); boolean disableNonCoreServices = SystemProperties.getBoolean("config.disable_noncore", false); boolean disableNetwork = SystemProperties.getBoolean("config.disable_network", false); |
流程
- System.loadLibrary("android_servers")(加载lib android_servers库)
- nativeInit
- 初始化native服务
- ServerThread thr = new ServerThread()
- thr.initAndLoop()
- new HandlerThread("WindowManager")
- installer = new Installer
- installer.ping()
- AttributeCache.init
- display.waitForDefaultDisplay
- firstBoot = pm.isFirstBoot
- ActivityManagerService.setSystemProcess
- ActivityManagerService.installSystemProviders
- Watchdog.getInstance().init
- Watchdog.getInstance().addThread(wmHandler, "WindowManager thread")
- ActivityManagerService.self().setWindowManager
- inputManager.setWindowManagerCallbacks(wm.getInputMonitor())
- display.setWindowManager
- display.setInputManager
- wm.displayReady
- ActivityManagerNative.getDefault().showBootMessage
- mountService.waitForAsecScan
- contentService.systemReady
- dock = new DockObserver
- inputManager.setWiredAccessoryCallbacks(new WiredAccessoryManager)
- wm.detectSafeMode
- ActivityManagerService.self().enterSafeMode
- VMRuntime.getRuntime().disableJitCompilation
- 调用服务的systemReady
- 调用服务的systemRunning
- Looper.loop
服务
| 名称 | 类名 | 依赖 | 说明 |
| power | PowerManagerService | lights activity batterystats appops | |
| activity | ActivityManagerService | factoryTest window | |
| batterystats | BatteryStatsService | 在ActivityManagerService构造时创建 | |
| usagestats | UsageStatsService | ||
| procstats | ProcessStatsService | activity | |
| appops | AppOpsService | ||
| display | DisplayManagerService | wmHandler window input | |
| telephony.registry | TelephonyRegistry | ||
| scheduling_policy | SchedulingPolicyService | ||
| package | PackageManagerService | installer factoryTest onlyCore | |
| meminfo | MemBinder | activity | 在ActivityManagerService的setSystemProcess方法中创建 |
| gfxinfo | GraphicsBinder | activity | |
| dbinfo | DbBinder | activity | |
| cpuinfo | CpuBinder | activity | |
| permission | PermissionController | activity | |
| entropy | EntropyMixer | ||
| user | UserManagerService | ||
| account | AccountManagerService | ||
| content | ContentService | factoryTest | |
| LightsService | |||
| battery | BatteryService | ||
| vibrator | VibratorService | ||
| consumer_ir | ConsumerIrService | ||
| alarm | AlarmManagerService | ||
| input | InputManagerService | wmHandler | |
| window | WindowManagerService | power display input wmHandler factoryTest firstBoot onlyCore | |
| bluetooth_manager | BluetoothManagerService | ||
| input_method | InputMethodManagerService | ||
| accessibility | AccessibilityManagerService | ||
| mount | MountService | ||
| lock_settings | LockSettingsService | ||
| device_policy | DevicePolicyManagerService | ||
| statusbar | StatusBarManagerService | ||
| clipboard | ClipboardService | ||
| network_management | NetworkManagementService | ||
| textservices | TextServicesManagerService | ||
| netstats | NetworkStatsService | connectivity | |
| netpolicy | NetworkPolicyManagerService | connectivity | |
| wifip2p | WifiP2pService | ||
| wifi | WifiService | ||
| connectivity | ConnectivityService | network_management netstats netpolicy | |
| servicediscovery | NsdService | ||
| updatelock | UpdateLockService | ||
| notification | NotificationManagerService | ||
| devicestoragemonitor | DeviceStorageMonitorService | ||
| location | LocationManagerService | ||
| country_detector | CountryDetectorService | ||
| search | SearchManagerService | ||
| dropbox | DropBoxManagerService | ||
| wallpaper | WallpaperManagerService | ||
| audio | AudioService | ||
| usb | UsbService | ||
| TwilightService | |||
| UiModeManagerService | twilight | ||
| backup | BackupManagerService | ||
| appwidget | AppWidgetService | ||
| RecognitionManagerService | |||
| diskstats | DiskStatsService | ||
| samplingprofiler | SamplingProfilerService | ||
| NetworkTimeUpdateService | |||
| commontime_management | CommonTimeManagementService | ||
| CertBlacklister | |||
| dreams | DreamManagerService | ||
| assetatlas | AssetAtlasService | ||
| IdleMaintenanceService | battery | ||
| | PrintManagerService | ||
| media_router | MediaRouterService |

562

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



