码迷,mamicode.com
首页 > 其他好文 > 详细

调用系统应用

时间:2015-01-13 10:43:49      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:浏览器   短信   电话   开发   如何   

在开发某些应用时可能希望能够调用iOS系统内置的电话、短信、邮件、浏览器应用,此时你可以直接使用UIApplication的OpenURL:方法指定特定的协议来打开不同的系统应用。常用的协议如下:

打电话:tel:或者tel://、telprompt:或telprompt://(拨打电话前有提示)

发短信:sms:或者sms://

发送邮件:mailto:或者mailto://

启动浏览器:http:或者http://

下面以一个简单的demo演示如何调用上面几种系统应用:

//打电话
- (IBAction)callClicK:(UIButton *)sender {
    NSString *phoneNumber=@"18500138888";                                 //  NSString *url=[NSString stringWithFormat:@"tel://%@",phoneNumber];
//这种方式会直接拨打电话    
    NSString *url=[NSString stringWithFormat:@"telprompt://%@",phoneNumber];
    //这种方式会提示用户确认是否拨打电话    
    [self openUrl:url];
}



//发送短信
- (IBAction)sendMessageClick:(UIButton *)sender {
    NSString *phoneNumber=@"18500138888";
    NSString *url=[NSString stringWithFormat:@"sms://%@",phoneNumber];
    [self openUrl:url];
}

//浏览网页

- (IBAction)browserClick:(UIButton *)sender {
    NSString *url=@"http://www.cnblogs.com/kenshincui";
    [self openUrl:url];
}


#pragma mark - 私有方法
-(void)openUrl:(NSString *)urlStr{    
//注意url中包含协议名称,iOS根据协议确定调用哪个应用,例如发送邮件是“sms://”其中“//”可以省略写成“sms:”(其他协议也是如此)    
    NSURL *url=[NSURL URLWithString:urlStr];
    UIApplication *application=[UIApplication sharedApplication];    
    if(![application canOpenURL:url]){
        NSLog(@"无法打开\"%@\",请确保此应用已经正确安装.",url);        
        return;
    }
    [[UIApplication sharedApplication] openURL:url];
}


调用系统应用

标签:浏览器   短信   电话   开发   如何   

原文地址:http://wangbaolin.blog.51cto.com/9654973/1602723

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!