我必须使用Xamarin.iOS应用程序使用OpenUrl发送邮件。简单的案例效果很好:
var uri = new Uri ("mailto:info@example.com");
UIApplication.SharedApplication.OpenUrl (new NSUrl (uri.ToString ()));但是,如果我想发送mailto uri和主题例如,它需要某种编码。
var uri = new Uri ("mailto:info@example.com?subject=Hello, World!");
UIApplication.SharedApplication.OpenUrl (new NSUrl (uri.ToString ())); //FAIL我试过System.Net.Webutility.Encode(),但那不起作用。
发布于 2013-12-18 20:35:32
WebUtility.UrlEncode 做工作。但是NSUrl的输入是有限的。
我通过从输入字符串中去掉奇怪的字符来修正这个问题。
var subject = Regex.Replace (subject, @"[^\u0000-\u00FF]", string.Empty);
var uri = new Uri("mailto:info@b4c.be?subject=" + WebUtility.UrlEncode(subject));
UIApplication.SharedApplication.OpenUrl (new NSUrl (uri.ToString ()));https://stackoverflow.com/questions/20663758
复制相似问题