有没有办法在iOS中通过短信或其他应用程序发送链接?

时间:2014-04-06 15:59:56

标签: ios ios7

我桌上的每个单元格都有一个按钮。当按下按钮时,我希望打开短信屏幕,并使用唯一链接进行预填充。

我在Android中使用android.intent.action.SEND完成了此操作,但我不确定如何在iOS中执行此操作。在Android中,当用户点击按钮时,Android会自动为用户提供多个共享网址的选项(Facebook / twitter / sms / gmail / etc)。我希望这种情况发生,但如果不可能,那么打开短信屏幕就足够了。

我想在iOS中有可能出现这样的事情吗?

2 个答案:

答案 0 :(得分:1)

我建议使用UIActivityViewController,因为这应该显示设备上能够发送链接的所有应用程序。这仅适用于设置消息的内容;不幸的是,它似乎不是possible to set the recipient using this technique

NSString *text = @"Click on this link!!";
NSURL *url = [NSURL URLWithString:@"http://google.com"];

NSArray *itemsToShare = @[text, url];

UIActivity *activity = [[UIActivity alloc] init];
NSArray *applicationActivities = [[NSArray alloc] initWithObjects:activity, nil];
UIActivityViewController *activityVC =
        [[UIActivityViewController alloc] initWithActivityItems:itemsToShare
                                          applicationActivities:applicationActivities];

[self presentViewController:activityVC
                       animated:YES
                     completion:nil];

enter image description here


如果你知道你肯定想发送短信(而不是让用户决定),那么还有其他一些选择。

MFMessageComposeViewController

以下网页非常好地解释了如何执行此操作:http://www.appcoda.com/ios-programming-send-sms-text-message

打开短信:网址

可以使用简单的“短信:”链接显示短信作曲家,但您只能预先填写收件人的电话号码,而不是信息,因此这可能不足以满足您的需求。例如:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms:1-408-555-1212"]];

https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/SMSLinks/SMSLinks.html

答案 1 :(得分:0)

通过搜索StackOverflow可以找到这个问题的答案。之前已被多次询问过。

基本上,MFMessageComposeViewController是你的朋友。您可以使用Google找到各种tutorials