Как показать страницу настроек «Голосовой ввод и вывод» из приложения? - PullRequest
2 голосов
/ 18 апреля 2011

Чтобы помочь пользователю выбрать нужные мне настройки из моего приложения, чтобы открыть страницу настроек голосового ввода и вывода. Я могу просто открыть настройки (Settings.ACTION_SETTINGS), я могу открыть различные страницы там (Settings.ACTION_XXXX_SETTINGS) - но он не может найти, как это сделать для страницы голосового ввода и вывода.

Есть идеи?

P.S. Я пытаюсь проверить источник Settings.apk, но никто не использует VoiceInputOutputSettings.java

Ответы [ 3 ]

2 голосов
/ 10 декабря 2011

Это мой код, работающий с Android 2.2

final Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(ComponentName.unflattenFromString("com.android.settings/.TextToSpeechSettings"));
intent.addCategory(Intent.CATEGORY_LAUNCHER );
startActivity(intent);

См. Также: как отобразить настройки преобразования текста в речь в моем приложении?

2 голосов
/ 18 апреля 2011

В Android 2.3.3 найден следующий код git:

 501         <activity android:name="VoiceInputOutputSettings"
 502                 android:label="@string/voice_input_output_settings">
 503             <intent-filter>
 504                 <action android:name="android.intent.action.MAIN" />
 505                 <action android:name="com.android.settings.VOICE_INPUT_OUTPUT_SETTINGS" />
 506                 <category android:name="android.intent.category.DEFAULT" />
 507             </intent-filter>
 508         </activity>
 509 
 510         <activity android:name="TextToSpeechSettings" android:label="@string/tts_settings">
 511             <intent-filter>
 512                 <action android:name="android.intent.action.MAIN" />
 513                 <action android:name="com.android.settings.TTS_SETTINGS" />
 514                 <category android:name="android.intent.category.DEFAULT" />
 515             </intent-filter>
 516         </activity>

Для этих двух действий официальной константы может не быть. Но вы можете попробовать "com.android.settings.VOICE_INPUT_OUTPUT_SETTINGS" и "com.android.settings.TTS_SETTINGS" , это работает на моем Nexus S.

1 голос
/ 31 марта 2012

Этот код хорошо работает для отображения страницы настроек голосового ввода / вывода.Надеюсь, что это работает для вас.

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.android.settings","com.android.settings.VoiceInputOutputSettings"));     
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...