Compartilhar via


SFSpeechRecognizer.RequestAuthorization Método

Definição

Apresenta de forma assíncrona uma caixa de diálogo do sistema para o usuário que solicita acesso.

[Foundation.Export("requestAuthorization:")]
public static void RequestAuthorization (Action<Speech.SFSpeechRecognizerAuthorizationStatus> handler);
static member RequestAuthorization : Action<Speech.SFSpeechRecognizerAuthorizationStatus> -> unit

Parâmetros

Atributos

Comentários

Assim como acontece com outras instalações que envolvem privacidade, o usuário deve permitir positivamente que o aplicativo acesse o reconhecimento de fala.

Os aplicativos que usam o reconhecimento de fala devem adicionar a seguinte chave, com descrições apropriadas, em seu info.plist arquivo:

<key>NSSpeechRecognitionUsageDescription</key>
<string>Speech recognition will be used to determine which words you speak into this device's microphone.</string>          

Se um aplicativo não tiver essa chave, o sistema operacional executará um desligamento "silencioso" em runtime, sem exceção ou capacidade de registrar o erro em log.

O valor da cadeia info.plist de caracteres é apresentado ao usuário em resposta ao RequestAuthorization(Action<SFSpeechRecognizerAuthorizationStatus>) método :

if (SFSpeechRecognizer.AuthorizationStatus != SFSpeechRecognizerAuthorizationStatus.Authorized)
{
	SFSpeechRecognizer.RequestAuthorization((status) => 
	{
	   switch (status)
	   {
		   case SFSpeechRecognizerAuthorizationStatus.Authorized:
			   InvokeOnMainThread(() => prepareButton.Enabled = true);
			   break;
		   case SFSpeechRecognizerAuthorizationStatus.Restricted:
		   case SFSpeechRecognizerAuthorizationStatus.NotDetermined:
		   case SFSpeechRecognizerAuthorizationStatus.Denied:
				 InvokeOnMainThread(() => prepareButton.Enabled = false);
			   break;
	   }
    });
}

Aplica-se a