<a href='http://somewhere.com/two.woa/wa?id=000&param=0'>click me</a>
Правильно, хотя ‘& amp;’ используется чаще, чем ‘&’ или ‘& # x2C;’.
Если метод stringByAddingPercentEscapesUsingEncoding делает то, что говорит на жестяной коробке, он должен работать (*), но документация NSString выглядит немного неясно, какие символы точно экранированы. Проверьте, что вы в конечном итоге, URL должен быть что-то вроде:
mailto:bob@example.com?subject=test&body=Link%3A%3Ca%20href%3D%22http%3A//example.com/script%3Fp1%3Da%26amp%3Bp2%3Db%22%3Elink%3C/a%3E
(*: по модулю обычного заявления об отказе от ответственности, что параметры mailto: link, такие как «subject» и «body», нестандартны, во многих ситуациях приводят к сбою, и их, как правило, следует избегать.)
После открытия приложения электронной почты текст останавливается на «... link:».
Если «stringByAddingPercentEscapesUsingEncoding» не экранируется от «<» до «% 3C», это может быть проблемой. В противном случае это может быть связано не с побегами, а с преднамеренным ограничением на уровне почтовой программы, запрещающим "<". Как упоминалось ранее,? Body = ... не является надежной функцией. </p>
В любом случае вы не должны ожидать, что почтовый клиент распознает HTML и попытается отправить HTML-сообщение; очень немногие сделают это.