1

iPhone アプリを使用していますが、Google Text-To-Speech (Google TTS) を統合する必要があります。

英語のアルファベットの文字に対してのみ機能します。Ᾰ、Д、И などの特殊文字を使用してリンク (linkTTS) を作成しようとすると、機能しなくなります。コードは次のようになります。

NSString *queryTTS = [[NSString alloc] init]; //text to be read
queryTTS = [query stringByReplacingOccurrencesOfString:@" " withString:@"+"];
NSString *linkTTS = [NSString stringWithFormat:@"http://translate.google.com/translate_tts?tl=en&q=%@",queryTTS];

NSData *dataTTS = [NSData dataWithContentsOfURL:[NSURL URLWithString:linkTTS]];

ttsPlayer = [[AVAudioPlayer alloc] initWithData:dataTTS error:nil]; 
[ttsPlayer play];

stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding を使用してみましたが、Google TTS がこのタイプの URL エンコーディングを認識しないため、これは機能しません。

4

1 に答える 1

0

Android 用のアプリで作業しているときに、同じ問題に遭遇しました。多くのエンコーディング タイプで試しましたが、うまくいきませんでした。最終的に問題を解決したのは、「Mozilla/5.0」へのGETリクエストの「User-Agent」プロパティを指定したことです。ああ、私が最も適していると思ったエンコーディング タイプは UTF-8 です。Google 翻訳でサポートされているほとんどの特殊文字を認識できます。
お役に立てれば

于 2011-02-01T07:54:28.513 に答える