Я использую руководство по созданию контекстных голосовых команд изнутри моей посуды (в основном пользовательское меню «oke glass» внутри вашего собственного приложения), перечисленное ниже. Я очень тщательно рисую часть своего Glassware с этого примера и даже проверял три раза, что я правильно выполнил шаги, но испытывал неожиданное поведение.Контекстное голосовое подменю выглядит иначе, чем родительское меню, не отвечает на голос
https://developers.google.com/glass/develop/gdk/voice#contextual_voice_commands
Когда я говорю «ОК стекло», пункты меню отображаются в виде белого текста с прозрачным фоном, наложенные на мой взгляд контента (который является подклассом GLSurfaceView, не то, что она должна быть актуальной). Когда я говорю с командой, которая является обычным пунктом меню, она работает по назначению. Однако, когда я говорю команду, содержащую подменю, элементы submeu появляются во всплывающем списке с текстом на непрозрачном фоне. Этот всплывающий список не отвечает на голос, в отличие от его родительского меню. Список реагирует только на одно нажатие, которое позволяет выбрать только первый элемент; нет возможности прокручивать выделение на любой другой элемент.
UPDATE: Это заявление:
образец Google является меню многоуровневого, который предполагается работать, но они не предоставляют загружаемый образец исходного кода для него, так что я не могу подтвердить их пример работает, как утверждается. Неужели кому-то еще не повезло с многоуровневыми контекстными голосовыми меню?
Больше не верна. Я начал с нуля с совершенно нового пустого Android-проекта, нацеленного на Glass, и на этот раз я скопировал/вставлял примерный код Google поэтапно и добавил значения строковых ресурсов (которые они не предоставили), поэтому он будет компилироваться. Я обнаружил, что образец кода Google имеет ту же ошибку!
Вчера я попробовал код Google в своем собственном проекте (см. Мое последнее редактирование), и у него такая же ошибка. Поэтому, видя их код, достаточно. Спасибо за вашу помощь, но я попробовал ваше приложение с GitHub, и он строит, разворачивает, а затем запускает для меня запуск. Я использую Eclipse и сразу заметил, что структура проекта, к которой я привыкла, сильно отличается от вашего проекта, основанного на градле. Вероятно, поэтому среда выполнения Java не может найти класс MainActivity. – staeryatz
да, я использовал андроид-студию. Можете ли вы поделиться своим кодом случайно? Легче понять, что вам не хватает. – pt2121
также, мой проект на GitHub более совершенен. Итак, вместо копирования и вставки Gdk doc, почему бы вам не попробовать c & p mine? – pt2121