次の方法で共有


SFSpeechRecognizer.RequestAuthorization メソッド

定義

アクセスを要求しているユーザーにシステム ダイアログを非同期的に表示します。

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

パラメーター

属性

注釈

プライバシーに関する他の機能と同様に、ユーザーはアプリが音声認識にアクセスすることを積極的に許可する必要があります。

音声認識を使用するアプリでは、次のキーと適切な説明を info.plist ファイルに追加する必要があります。

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

アプリケーションにこのキーがない場合、オペレーティング システムは実行時に "サイレント" シャットダウンを実行します。例外や間違いをログに記録する機能はありません。

文字列の info.plist 値は、 メソッドに応答してユーザーに RequestAuthorization(Action<SFSpeechRecognizerAuthorizationStatus>) 表示されます。

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;
	   }
    });
}

適用対象