iphone中结束电话后返回自己的应用

原文地址:http://blog.csdn.net/favormm/article/details/6034952

大家想不想在自己的应用中拨打电话呀?打电话可以用openURL:这个API, 如:[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://10086"]];但是当电话结束后,返回的是系统的拨打电话界面,如何才能返回自己的应用呢?这儿有两种方法与大家分享。

第一种是用UIWebView加载电话,这种是合法的,可以上App Store的。

代码如下:

// assuming you have an ivar to store a weak reference to a UIWebView:  
// UIWebView *phoneCallWebView;  
- (void) dialPhoneNumber:(NSString *)aPhoneNumber  
{  
    NSURL *phoneURL = [NSURL URLWithString:[NSString stringWithFormat:@"tel:%@",aPhoneNumber]];  
    if ( !phoneCallWebView ) {          
        phoneCallWebView = [[UIWebView alloc] initWithFrame:CGRectZero];  
    }  
    [phoneCallWebView loadRequest:[NSURLRequest requestWithURL:phoneURL]];  
}  
- (void) dealloc  
{  
    // cleanup  
    [phoneCallWebView release], phoneCallWebView = nil;  
   [super dealloc];  
}

第二种是私有方法,不能上App Store的。

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"telprompt://10086"]];

posted on 2012-05-25 09:47  黯夜曦  阅读(181)  评论(0编辑  收藏  举报

导航