当用户在mirrorlink模式下点击carkit的语音控件时,api会被触发。
假设用户点击转向安装的语音控制按钮。如何在mirrorlink应用程序中捕获该事件。
答案 0 :(得分:0)
MirrorLink CommonAPI服务调用IDeviceStatusListener的onMicrophoneStatusChanged方法。 如果参数为true,则麦克风打开,如果已关闭,则为false。
一般的CommonAPI:https://causeway.carconnectivity.org/wg/DevWG/document/1989 适用于CommonAPI的Android版本的Java Doc:https://causeway.carconnectivity.org/wg/DevWG/document/2119
示例:
IDeviceStatusListener devStatusListener = new IDeviceStatusListener.Stub() {
@Override
public void onDriveModeChange(boolean isDriving) throws RemoteException { }
@Override
public void onNightModeChanged(boolean isNight) throws RemoteException { }
@Override
public void onMicrophoneStatusChanged(boolean micActive) throws RemoteException {
if (micActive) {
//do s.th. great with the microphone input
} else {
//stop your recording or so
}
}
};
在您设置CommonAPI服务权限的地方,不要忘记将侦听器链接到服务:
devStatMng = commonapiService.getDeviceStatusManager(packagename, devStatusListener);