Мне нужно добавить приложение «Голосовой поиск» в «Выполнить действие с помощью» в Android - PullRequest
1 голос
/ 09 ноября 2011

Кажется, я не могу найти ни одного примера того, как добавить свою собственную программу (голосовое управление) в список «Выполнить действие с помощью» при нажатии кнопки поиска.

Прямо сейчас, когдаВы нажимаете кнопку поиска на вашем устройстве, Google Voice Search активируется.Мне нужно добавить сюда свое собственное программное обеспечение, чтобы конечный пользователь мог выбрать либо Google Voice Search, либо мое собственное приложение.

Примерно так, как показано в этом примере: http://support.launcherpro.com/images/complete%20action%20using%20lp_2.png, но мне нужен кодпример (намерение) для действия голосового поиска, в частности.

Итак, еще раз, я хочу сопоставить свое приложение со списком «Выполнить действие, используя», когда человек нажимает кнопку поиска.Кнопка поиска на самом устройстве, а не в моем приложении.

Я нашел этот код (который отображает конкретное приложение в меню при открытии файла .doc), но как я могу изменить его, чтобы добавить мое приложениеперечислить на кнопку поиска долгое нажатие?

      <activity android:name="ActivityTest" android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="http" />
            <data android:pathPattern=".*doc" />
        </intent-filter>
     </activity>

Ваша помощь очень ценится.Спасибо.

1 Ответ

1 голос
/ 09 ноября 2011

Используйте это намерение: RecognizerIntent.ACTION_RECOGNIZE_SPEECH Вот пример кода о том, как это работает.

// Check to see if a recognition activity is present
PackageManager pm = getPackageManager();
List activities = pm.queryIntentActivities(
  new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH), 0);
if (activities.size() != 0) {
  speakButton.setOnClickListener(this);
} else {
  speakButton.setEnabled(false);
  speakButton.setText("Recognizer not present");
}

http://developer.android.com/resources/articles/speech-input.html

...