2017-05-30 3 views
1

Ich rufe Text zu Sprache für die französische Sprache.iOS 10.3 Text zu Sprache funktioniert auf Simulator, aber nicht auf Gerät

Dies funktioniert wie erwartet: iOS 9.3 Simulator, iOS 9.3 Gerät (iPad 3rd gen), iOS 10.3 Simulator. Funktioniert nicht (geräuschlos) auf iOS 10.3 Gerät (iPhone 6s).

Standard Französische Sprache ist installiert und funktioniert entsprechend den Geräteeinstellungen.

static AVSpeechSynthesizer* synthesizer = NULL; 
//... 
+(void)readText:(NSString*)text 
{ 
    if(synthesizer == NULL) 
     synthesizer = [[AVSpeechSynthesizer alloc] init]; 
    AVSpeechUtterance *utterance = [AVSpeechUtterance speechUtteranceWithString:text]; 
    utterance.voice = [AVSpeechSynthesisVoice voiceWithLanguage:@"fr-FR"]; 
    [synthesizer speakUtterance:utterance]; 
} 
+0

Bitte überprüfen Sie, ob Ihr Gerät im Silent-Modus ist oder nicht. Überprüfen Sie auch die Lautstärken der Geräte nach oben und unten. –

Antwort

1

Schaltet die Sprache s out Der Inhesizer wird über die Ruftonlautstärke und nicht über die Medienlautstärke gesteuert. Der Klingelton wurde auf dem Gerät des Testers gedämpft.

0

auf Ihrer .h-Datei hinzufügen AVSpeechSynthesizer* synthesizer = NULL; und Sie sind gut go-- ich es getestet haben .. es funktioniert super fine :)

gehen Sie zu Ihrer .h-Datei und fügen Sie

AVSpeechSynthesizer* synthesizer = NULL; 

und auf der .m ein

-(void)readText:(NSString*)text 
{ 
    if(synthesizer == NULL) 
     synthesizer = [[AVSpeechSynthesizer alloc] init]; 
    AVSpeechUtterance *utterance = [AVSpeechUtterance speechUtteranceWithString:text]; 
    utterance.voice = [AVSpeechSynthesisVoice voiceWithLanguage:@"fr-FR"]; 
    [synthesizer speakUtterance:utterance]; 
} 
Verwandte Themen