我想知道用户何时真正从我的应用程序(UIWebView)拨打电话,而不仅仅是点击电话号码。
在我的应用程序中按下电话链接后,当用户收到呼叫/取消弹出窗口时,如何获得用户选择的结果?
Open tel上有一些关于此的信息:来自 UIWebView 的链接。
事情是如何运作的以及你想要什么
操作系统不会为您显示呼叫/取消警报对话框。那取决于你。它出现在 Safari 中是因为 Safari 应用程序的 shouldStartLoadWithRequest 方法无疑会通过显示 UIAlertView 来响应 tel: 方案。if ([url.scheme isEqualToString:@"tel"]) 的条件应该在“是”时触发带有呼叫和取消按钮的 UIAlertView。在 Call 时,您将告诉 sharedApplication 打开 URL;在取消时,您将不会发出呼叫并且您还希望返回 NO,因此您的应用程序不会尝试 loadWithRequest
代码示例:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
if (buttonIndex == 1) {
//OK clicked
} else {
}
}
- (void) _showAlert:(NSString*)title
{
UIAlertView* alertView = [[UIAlertView alloc] initWithTitle:title message:@"Check your networking configuration." delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alertView show];
[alertView release];
}
希望这对您有所帮助。
此致
莱纳斯