1

Так что я пытался осуществить это - The fastest route between voice search and your appПолучите поиск от Google Now

То, что я до сих пор есть ...

В манифесте:

<activity android:name=".MainActivity"> 
<intent-filter> 
    <action android:name="com.google.android.gms.actions.SEARCH_ACTION"/> 
    <category android:name="android.intent.category.DEFAULT"/> 
</intent-filter> 

В MainActivity:

if (Intent.ACTION_SEARCH.equals(intent.getAction())) { 
     String query = intent.getStringExtra(SearchManager.QUERY); 
     editText.setText(query); 

}

Если я наберу свое имя приложения в Google Now, приложение будет показано. Если я его открываю, ничего не происходит, поэтому я не получил поисковый запрос (имя приложения).

Как мне реализовать, как описано сообщение «О'кей, Google, поиск пиццы на MyApp»?

+1

Вы голосовой поиск 'ok google, поиск QUERY на MyApp'? Просто ввод имени вашего приложения не вызывает эту функцию. – ianhanniballake

+0

Ой, не может быть «MyApp QUERY»? –

+0

@ArjunU. это сработало для вас. Я пробовал то же самое и прекрасно работал с помощью команды adb, но он не работал с google now search.Will будет работать только после того, как он будет жить ... ?? –

ответ

2

согласно blog post, запросы в формате:

Ok Google, поиск пицца на Eat24

Ok Google, поиск отелей в Maui на TripAdvisor

Вы заметите, что выделенная область - это поисковый запрос, который получает ваше приложение, когда успешный голосовой поиск в правильном формате отправлено в ваше приложение.

+0

Это не работает для меня. Я проверил все три раза, но просто не могу получить этот поисковый запрос в моем приложении. Кто-нибудь получил это, чтобы работать? – Chaitanya

+1

Ну ... похоже, что приложение должно быть опубликовано в Play Маркете: https://plus.google.com/+AndroidDevelopers/posts/afSRdDQiy1N - искать комментарии Ярека Вилкевича. Попытаемся сделать следующее. – Chaitanya

+0

@Chaitanya это сработало для меня. Не нужно публиковать приложение в магазине. У вас есть Google сейчас на вашем телефоне? –

1

Кроме того, способ проверки Intent также может быть другим. Только это сработало для меня. Как указано в документации, это.

Intent intent = getIntent(); 
if (Intent.ACTION_SEARCH.equals(intent.getAction()) 
     || "com.google.android.gms.actions.SEARCH_ACTION".equals(intent.getAction())) { 
    externalQuery = intent.getStringExtra(SearchManager.QUERY); 
    //String xquery = query; 
} 
+2

Ввод «com.google.android.gms.actions.SEARCH_ACTION» .equals (intent.getAction()) действительно не очень приятен. Гораздо лучше было бы «SearchIntents.ACTION_SEARCH.equals (intent.getAction())» –

+0

это работал на меня – Achin

Смежные вопросы