zoukankan      html  css  js  c++  java
  • iOS开发- 拨打电话总结

    关于iOS应用拨打电话, 我所知道的有3种办法, 详细例如以下:


    一。利用openURL(tel)

    特点: 直接拨打, 不弹出提示。 而且, 拨打完以后, 留在通讯录中, 不返回到原来的应用。

    //拨打电话
    - (void)callPhone:(NSString *)phoneNumber
    {
        //phoneNumber = "18369......"
        NSMutableString * str=[[NSMutableString alloc] initWithFormat:@"tel:%@",phoneNumber];
        [[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]];
    }

    二。利用requestWithURL (推荐使用)

    特点: 拨打前弹出提示。 而且, 拨打完以后会回到原来的应用。

    //拨打电话
    - (void)callPhone:(NSString *)phoneNumber
    {
        //phoneNumber = "18369......"
        NSMutableString * str=[[NSMutableString alloc] initWithFormat:@"tel:%@",phoneNumber];
        UIWebView * callWebview = [[UIWebView alloc] init];
        [callWebview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:str]]];
        [self.view addSubview:callWebview];
    }

    三。利用openURL(telprompt)

    特点: 拨打前弹出提示。 而且, 拨打完以后会回到原来的应用。

    注意: Apple的官方文档中, 没有出现过telprompt, 之前也有人使用这个, 上传审核的时候被拒绝了。

    //拨打电话
    - (void)callPhone:(NSString *)phoneNumber
    {
        //phoneNumber = "18369......"
        NSMutableString * str=[[NSMutableString alloc] initWithFormat:@"telprompt://%@",phoneNumber];
        [[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]];
    }



  • 相关阅读:
    AngularJS 指令的 Scope (作用域)
    ubuntu16安装使用chrome
    kibana 和ES安装配置常见问题解决
    angular-translate国际化
    安装指定版本的nodejs
    Sass (Syntactically Awesome StyleSheets)
    小程序的网路请求赋值
    c# List<List<object(Id,Name)> 转换成 Dictionary<string, string>
    c# linq List<T> To Excel
    c# 格式化easyui tree
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4196555.html
Copyright © 2011-2022 走看看