Apple今天拒绝了我的应用程序建议,除其他事项外,我不应强迫我的用户访问Safari以访问我的网页。他们建议使用iOS9中新增的SafariWebController。我去寻找指导,只找到了Swift教程。
我一直在使用以下功能启动Safari,并与按钮相关联:
NSURL *url = [NSURL URLWithString:WEBSITE_REGISTRATION_URL];
[[UIApplication sharedApplication] openURL:url];
所以,我会分享我的简单配置,让我们这些人试图跟上那些尚未使用Swift的人。
答案 0 :(得分:33)
共有5个步骤:
单击您的项目目标,然后选择“Build Phases”。在“Build Phases”下,单击“Link Binary with Libraries”箭头,然后单击加号。在将打开的窗口中搜索SafariServices。在列表中突出显示它,然后单击“添加”。
将库导入到按钮所在的.m文件中:
#import <SafariServices/SafariServices.h>
在.m文件中定义类扩展以符合Safari VC协议:
@interface SKWelcomeViewController () <SFSafariViewControllerDelegate>
实现以下委托方法,当需要解除对Safari View Controller的解雇时将调用该方法:
- (void)safariViewControllerDidFinish:(SFSafariViewController *)controller {
[self dismissViewControllerAnimated:true completion:nil];
}
最后,IBAction中的代码:
SFSafariViewController *svc = [[SFSafariViewController alloc] initWithURL:url];
svc.delegate = self;
[self presentViewController:svc animated:YES completion:nil];
享受!