尝试打开URL方案时使用建议打开



我启动了一个可以处理短信或邮件url方案的应用程序,但我不想打开安装的默认应用程序。我试过做这个

[[UIApplication sharedApplication] openURL: url];

但这会打开默认的SMS和Mail应用程序。

我尝试使用UIActivityViewController

NSString *url=@"mailto:sample@gmail.com";
NSURL *schemeURL = [NSURL URLWithString:url];
NSString * title =[NSString stringWithFormat:@"Send Email",url];
NSArray* dataToShare = @[url];
UIActivityViewController* activityViewController =[[UIActivityViewController alloc] initWithActivityItems:dataToShare applicationActivities:nil]

但这不会在收件人字段中预先填充指定的电子邮件。

如果UIActivityViewController的行为相同,那就太好了,但让我们预先填充诸如receiver之类的信息。

有什么建议吗?

你可以在macos上使用非默认应用程序,但我认为你不能在iOS上这样做。看看例如。https://developer.apple.com/documentation/uikit/uiapplication/1648685-openurl?language=objc。

您可以尝试使用类似于下面的URL发送给定的主题和正文。

@"message://mailto://sample@gmail.com?subject=Subject&body=Body"

我认为如果您放弃message位,它仍然可以工作。我在某个应用程序的HTML页面中这样使用它。

如果你需要任何特殊的字符,你必须在主题和正文中对它们进行编码。

最新更新