android automotive powermanagement结构
2019-12-16 10:31:59 3 举报
登录查看完整内容
android car 中电源管理相关的类图、框架图
作者其他创作
大纲/内容
IVehicle.Proxy
CarApi
SystemInterface
getDefault()setDisplayState(boolean on);releaseAllWakeLocks();shutdown();enterDeepSleep(int wakeupTimeSec);switchToPartialWakeLock();switchToFullWakeLock();startDisplayStateMonitoring();stopDisplayStateMonitoring();isSystemSupportingDeepSleep();isWakeupCausedByTimer();
IVehicle.Stub
IVehicleCallback.Stub
HalServiceBase
ICar
+ IBinder: getCarService+ int: getCarConnectionType
VehicleHal
-xxxxHalService-mHalClient: HalClient
1..*
ICar.Stub.Proxy
1..1
Hardware Interface/automotive/vehicle
SystemInterfaceImpl
mPowerManager:PowerManagermDisplayManager: DisplayManagermFullWeakLock:WeaklockmPartialWakeLock:WeakLockmService:CarPowerManagementServicemDisplayListener:mDisplayState
ICarImpl
- CarxxxxService- mHal: mVechileHal- mAllServices: CarServiceBase[]
其中 mVehicle 对应 vechileHal,来自于:android.hardware.automotive.vehicle.V2_0.IVehicle .getService();将会被传递与mICarImpl中使用
MockedVehicleHal
HalClient
mVehicle:IVechile.ProxymInternalCallback:IVehicleCallback.Stub
Car
getCarManager(String serviceName)
Car 是整个automotive的 api的管理入口,其中:mService 是ICarImpl的客户端mServiceMap 在客户端缓存各种CarManagergetCarManager 通过名字获取并缓存对应的各种服务的manager
CarServiceBase
init();release();vehicleHalReconnected() dump(PrintWriter writer)
PowerHalService.PowerEventListener
onApPowerStateChange(PowerState state)onDisplayBrightnessChange(int brightness)
ICar.Stub
CarPowerManagementService
- mHal:PowerHalService- mSystemInterface: SystemInterface
CarService
mICarImpl:ICarImplmVehicle:IVehicle.Proxy
CarEmulator
mHalEmulator:MockedVehicleHal
( 1 ,1..*)
PowerHalService
mHal:VehicleHal
IVehicle
getAllPropConfigs()get(VehiclePropValue requestedPropValue)set(VehiclePropValue propValue)subscribeunsubscribe
0 条评论
回复 删除
下一页