iPhone - URL специального символа преобразования текста в речь Google

Я работаю над приложением для iPhone, и мне нужно интегрировать преобразование текста в речь Google (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.


person George    schedule 08.01.2011    source источник


Ответы (1)


Я столкнулся с той же проблемой, когда работал над приложением для Android. Я пробовал со многими типами кодирования, но это не сработало. В конечном итоге проблема была решена путем указания свойства «User-Agent» запроса GET для «Mozilla / 5.0». Да, и тип кодировки, который я нашел наиболее подходящим, - UTF-8. Он позволяет распознавать большинство специальных символов, фактически любых из тех, которые поддерживает Google Translate.
Надеюсь, это поможет

person Bandreid    schedule 01.02.2011