2016-06-17 15 views
1

Ich denke, ich bekomme die aktuelle Spracherkennung unter Verwendung von Code.Android - wie lautet der Name des aktuellen Spracherkennungsdienstes

String serviceComponent = Settings.Secure.getString(mContext.getContentResolver(), 
         Settings.Secure.VOICE_RECOGNITION_SERVICE); 

sollte es tun, aber Settings.Secure.VOICE_RECOGNITION_SERVICE wird nicht erkannt.

+0

Dies? https://developers.google.com/voice-actions/ –

Antwort

1

Das erste Ergebnis sollte der Standardanbieter sein. Wenn die Liste leer ist, gibt es keine:

 final List<ResolveInfo> services = ctx.getPackageManager().queryIntentServices(
       new Intent(RecognitionService.SERVICE_INTERFACE), 0); 

     String packageName = ""; 
     String serviceName = ""; 

     for (final ResolveInfo info : services) { 
       packageName = info.serviceInfo.packageName; 
       serviceName = info.serviceInfo.name; 
     }