Loading
Improved implementation of VoiceInteractionManagerService.setDisabled()
This method is called by CarService when the system goes into suspend state and the initial implementation completely disabled the service (and unbound system server from it), which had 2 drawbacks: - It adds extra work when the system resumes as it has to rebind. - It can cause memory leaks if the service implementation doesn't handle it well. This CL changes how the API is implemented: rather than disabling the service, it just ignores new sessions. To test it: 1. Disable $ adb shell cmd voiceinteraction disable true 2. Start a session $ adb shell cmd voiceinteraction show 3. Check logcat I VoiceInteractionManager: showSessionForActiveService(): ignored while temporarily disabled Bug: 190051449 Test: manual verification (see above) Change-Id: Idbc4881b92d9254fb07ea5af1370ea600fc10b80