2016-06-14 20 views
7

BeniOS 10.0 Konuşma Tanıma Hata kAFAssistantErrorDomain

let urlpath = Bundle.main().pathForResource("myvoice2", ofType: "m4a") 
    let url:URL = URL.init(fileURLWithPath: urlpath!) 

    let recognizer = SFSpeechRecognizer() 
    let request = SFSpeechURLRecognitionRequest(url: url) 
    recognizer?.recognitionTask(with: request, resultHandler: { (result, error) in 
     print (result?.bestTranscription.formattedString) 

    }) 

sonuç aşağıdaki gibi konuşma tanıma kullanmayı deneyin ben hata ayıklama ve

Error Domain=kAFAssistantErrorDomain Code=1101 "(null)"

Sizin var aşağıda hatayı bakın nil Fikir?

+0

Eğer info.plist içinde 'NSSpeechRecognitionUsageDescription' anahtar eklediniz mi: Böyle bir şey hile yapmak gerekiyor? –

+0

Zaten ekledim, ama aynı sorun. –

+0

Simülatör ile aynı reaksiyona sahip. "SpeakToMe" Xcode 8 Beta projesini açtığımda Swift 2.3'ten Swift 3'e bir dönüşüm istedim. Dönüştürdüm ... Herkes ne yaptı? Ve herkes bu dönüşümün problem olabileceğini düşünüyor mu? –

cevap

11

Aynı hatayı alıyorum, ancak aynı kod aygıtta iyi çalıştı. Dolayısıyla, iOS 10 beta’yu fiziksel bir cihaza yükleyin ve kodunuzu çalıştırın.

SFSpeechRecognizer.requestAuthorization { authStatus in 
    if authStatus == SFSpeechRecognizerAuthorizationStatus.authorized { 
     if let path = Bundle.main().urlForResource("test", withExtension: "m4a") { 
      let recognizer = SFSpeechRecognizer() 
      let request = SFSpeechURLRecognitionRequest(url: path) 
      recognizer?.recognitionTask(with: request, resultHandler: { (result, error) in 
       if let error = error { 
        print("There was an error: \(error)") 
       } else { 
        print (result?.bestTranscription.formattedString) 
       } 
      }) 
     } 
    } 
} 

I wrote about this in more detail here.

+2

Doğru, teşekkürler @ TwoStraws. Sorun Simülatörde gerçekleşir, gerçek cihaz üzerinde çalıştı. –

+2

Gerçek cihaz üzerinde test yapıyorum ve sorun hala var. App bir süre için çalışıyor gibi ama aynı hata ile durdurdu: Hata Etki Alanı = kAFAssistantErrorDomain Kodu = 203 "Zaman aşımı" UserInfo = {NSLocalizedDescription = Zaman aşımı, NSUnderlyingError = 0x17004ff30 {Hata Etki Alanı = SiriSpeechErrorDomain Kodu = 100 "(null)) "}} Bunun hakkında herhangi bir düşünce var mı? Teşekkürler –

+3

@VaVisal, zaman aşımı hatası SFSpeechURLRecognitionRequest örneğinin endAudio yöntemini hiç çağırmadan kaynaklanır. –

İlgili konular