2012-04-13 68 views
0

我触发通过一个UIWebView一个电话,这样,当通话结束后,直接返回到我的应用程序的用户,通过下面的代码:当WebView触发的呼叫在iPhone中结束时触发的事件/方法?

UIWebView *callWebview = [[UIWebView alloc] init]; 
NSURL *telURL = [NSURL URLWithString:@"tel:number-to-call"]; 
[callWebview loadRequest:[NSURLRequest requestWithURL:telURL]]; 

当它返回控制权交还给我的应用我” d喜欢执行一些代码,但是我无法确定在通话结束后返回到我的应用的操作系统正在调用的方法是什么? ViewWill,ViewDid等从不会在控制返回时被调用。

如果通话结束并且控件返回到webview/app时会调用什么东西?

+1

此信息是否有帮助? http://stackoverflow.com/questions/3319805/detecting-call-state-in-ios4 – anticyclope 2012-04-13 03:20:37

回答

0

UIWebview类有一些委托founctions.webview在开始加载和完成加载请求等时调用这些函数。我英文水平差,我希望你能理解我。如果我误解了你的问题,我的回答不是你想要的,请原谅我。

+0

是的,我了解webview具有委托功能,但我没有加载一个页面,我正在使用一个kludge。基本上,如果您使用正常的[UIApplication sharedApplicatio] openUrl:...调用,则在您实例化来自它的电话后,他们的智慧不会返回到您的应用程序。这将以编程方式开始通话,但当用户结束通话时,他们不会返回到您的应用程序。所以,如果您从webview中打开tel:// url,您可以让iOS返回到您的应用程序。如果你这样做,当用户结束通话时,他们直接返回到你的应用程序。 – user282172 2012-04-13 12:31:48

+0

这是我想要的行为,但返回到我的应用程序后,我假设会调用一些委托方法,但没有(至少在视图中)执行。我将调查应用程序委托是否被调用,并且可能必须查看是否可以使用电话状态通知来完成此操作。 – user282172 2012-04-13 12:33:45

+0

跟进。有些特定的应用程序级委托方法可以作为这个kludge循环的一部分被调用,可以用来做我需要的东西,但是我不会遇到它出现的问题,对象将被从内存中删除并在这个栈中重新创建,虽然它们通过iOS重新创建,但应用程序委托方法的时间先于娱乐事件,并且不会触发事件。 – user282172 2012-04-18 15:40:05