내가 작업하고있는 Android TV (ATV) 앱에는 음성 제어 기능이 있습니다. 기본적으로 사용자가 리모컨의 마이크 버튼을 누르면 키 이벤트 (KeyEvent.KEYCODE_SEARCH
)가 앱에서 처리되고 음성 인식이 시작되어 (android.speech.SpeechRecognizer
을 사용하여) 결과 (구문 분석 된 음성)를 가져 와서 앱에서 더 이상 구문 분석합니다 논리 (예 : 사용자 검색 결과 표시 또는 일부 인앱 조치 수행)Android TV 앱에서 Google Assistant가 RCU 마이크 버튼 신호를 넘기는 것을 방지 할 수 있나요?
아주 최근에 Google Assistant (GA)가 ATV 플랫폼 (처음 엔 Nvidia Shield 상자 임)에 소개 될 때까지 모든 것이 의도 한대로 작동하고 위에 설명되었습니다. RCU 마이크 버튼을 누르면 GA 오버레이가 나타나고 마이크 키 이벤트가 앱에 도달하지 않습니다.
지난 몇 일 동안 나는 광범위한 연구 (문서, 인터넷, 포럼, stackoverflow 등)를 수행하고 몇 가지 잠재적 인 해결 방법을 시도했지만 아직까지는 아무 일도 일어나지 않았고 어떤 확실한 것도 찾을 수 없었습니다. 화제에 대한 정보 (아마 ATV + GA 조합이 장면에서 다소 새롭고 ATV 생태계가 Android만큼 크지 않기 때문에).
내가 얻은 가장 좋은 힌트는 Spotify app for Android TV으로 끝난 것입니다. GA가없는 ATV 장치에서 실행될 때 기본적으로 위에서 설명한대로 동작합니다. 하지만 GA가있는 경우 GA 오버레이가 표시되고 구문 분석 된 음성을 받고 첫 번째 줄에 Spotify의 검색 결과가 표시되므로 Spotify 앱이 GA와 통합되어이 통합이 인앱 음성 제어를 대체합니다 기구. 이것은 마이크 키 이벤트를 수신하고 평소와 같이 음성 컨트롤을 진행하기 위해 앱 내부에서 GA를 무시/비활성화 할 수있는 방법이 없거나 적어도 현재 음성 명령을 처리하는 기본 방법이라고 제안합니다. 또한 설명 된 방식으로 음성 컨트롤에 접근하는 ATV 용 앱이 있다는 것을 보여줍니다. 그래서 여기있는 누군가가 이미 비슷한 문제에 직면했습니다.
내 질문 (들) :
- 은 RCU 마이크 버튼 신호 인수에서 구글 길잡이를 방지 할 수있다?
- 괜찮습니까? ("not ok"에 의해 나는 그러한 행동을 방해하는 공식 가이드 라인이 있습니까? 아니면 적어도 그렇게하지 않는 유효한 이유가 있습니까?)
- 그렇다면 수행 할 수 있습니까?
- 그렇지 않은 경우 GA와 통합하는 방법을 설명하는 리소스가 있습니까 (Spotify for ATV 앱의 방식)?