SFSpeechRecognizer.RequestAuthorization 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
액세스를 요청하는 사용자에게 시스템 대화 상자를 비동기적으로 제공합니다.
[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;
}
});
}