The active deletion action will cause binder blocked in some corner
cases. As serviceDied will take care of its deletion, remove the active
deletion has no side effect and could fix the issue.
Test: none
Bug: 296817256
Change-Id: Ib30b3910202e6bbd86ac59e0e69fbeb0a890dd38
If LinkedCallback::Make returns nullptr, do not put it
in Health::callback_. Otherwise, OnHealthInfoChanged
crashes later because the linked callback objects are
not null checked before accessing.
Test: android.hardware.health-service.aidl_fuzzer (with
a special corpus)
Fixes: 289599278
Change-Id: I8bad41dbcfbefeb54744059baffd4eef1ae7ec42
This change adds a missing newline character to the end of dump() for
the default health and wifi int
Add missing newline to health/wifi AIDL interfaces
This change adds a missing newline character to the end of dump() for
health and wifi.
Test: Take a bugreport and verify that the "X was the duration of
dumpsys Y" lines aren't preceded by the final line of the dump.
Test: Run "dumpsys android.hardware.health.IHealth/default" and verify
that the new line exists.
Test: Run "dumpsys android.hardware.wifi.IWifi/default" and verify that
the new line exists.
Bug: 278081288
Change-Id: I173dd174b5bab808c6296f7163982393e60ba0c6
1. add the new propertes
- batteryHealthData
- batteryStateOfHealth
- chargingState
- chargingPolicy
2. add new types to health status
3. add new methods
- setChargingPolicy
- getChargingPolicy
- getBatteryHealthData
Bug: 251425963
Test: m android.hardware.health-update-api
Change-Id: Ie2339c50e1f9bfc28427e4108a95b1a16c739205
Signed-off-by: Jack Wu <wjack@google.com>
Using service_fuzzer_defaults in
- android.hardware.health-service.aidl_fuzzer
- android.hardware.vibrator-service.example_fuzzer
Bug: 240318902
Test: m android.hardware.health-service.aidl_fuzzer
Test: m android.hardware.vibrator-service.example_fuzzer
Change-Id: I3fd1cf37a5835ebef14658ed40332132cec07e49
Devices may have actions triggered by
init.svc.vendor.charger. If the name is changed,
these actions are not triggered properly.
The name is usually vendor.charger, so the default
service will also use vendor.charger as the name.
Test: none
Bug: 215152892
Change-Id: Icb296ae82a6f3472730fdb3abc35dcede22889e7
Use charger_vendor SELinux context.
Also update readme to reflect the change.
Test: manual in offline-charging mode
Bug: 177269435
Change-Id: Icf5cd9d579b3365037e2d360fcc29b0ef4be1b15
Otherwise, clients will need to know how to destroy
LinkedCallback, a hidden class.
Test: builds
Bug: 177269435
Change-Id: I89532755da16b672c4cbece55b943306f68cdb9e
It was meant to be the replacement of health2impl, the helper library
for implementing the health HAL. Hence, vendor implementation needs
to access it.
Test: pass
Bug: 177269435
Change-Id: I58f4bcd860983b2b16ea52fbdd6e05c8d4953454
The intention is to compare binder objects not the
outer interface class.
Test: VTS
Bug: 177269435
Change-Id: I1c48112a75cb229b40c42ed2a3f347472d1860f9
Compared to the HIDL HAL implementation,
- libhealthloop (and the HealthLoop class) is kept
- Create libhealthaidlimpl that replaces libhealth2impl. Fork the implementation because
libhealth2impl is highly coupled with HIDL’s design rationale. This includes forking:
- HalHealthLoop
- Health implementation
- Combine the passthrough Health and hwbinder BinderHealth classes into the AIDL
implementation of Health. This is because AIDL does not support passthrough transport.
Separating the implementation for the two transports in HIDL does not make sense for AIDL.
- In HIDL, a BinderHealth is a HalHealthLoop which is composed of a (passthrough)
Health implementation. As a result of this change, in AIDL, a Health implementation
is a HalHealthLoop, which associates with the Health implementation itself with a raw
pointer.
- hidl_death_recipient becomes ScopedAIBinder_DeathRecipient
- Callback becomes LinkedCallback
Test: manual
Bug: 177269435
Change-Id: I76e914117ce09b218cdb9d655f2135d29bb629ae