美文网首页iOS开发IOS特技UI
iOS 短信开发Tips(验证码,邀请好友)

iOS 短信开发Tips(验证码,邀请好友)

作者: 奇董 | 来源:发表于2016-01-24 17:43 被阅读1056次

    今天项目正好用到短信邀请好友的功能,这边我就简单介绍一下,iOS一些常用的短信功能。

    短信验证码

    首先看你是个人开发,还是团队开发。我以前自己写东西玩的时候,短信验证功能是用的Bmob。Bmob是一个集成的云后台,如果你不懂后台开发,可以试试这个,上面的文档很齐全。

    传送门:http://www.bmob.cn/

    如果你公司的项目的话,这个时候肯定是有后台支持的。这个可以集成友盟,mob等等一堆平台的支持。

    发送短信邀请(自定义短信)

    当遇到自定义短信的时候,有两个选择。
    1.后台推送
    2.客户端发送
    后台推送各大平台都是要钱滴,几分到几毛不等。这时候就看老板舍不舍的money(≧▽≦)/啦啦啦。后台做的事,我这边就不提了。

    这边就介绍怎么客户端发送

    1.最简单的方法就是直接跳到系统的短信系统发送。

    [[UIApplication sharedApplication]openURL:[NSURL URLWithString:[NSString stringWithFormat:@"sms://%@",self.people.phone]]];
    

    这句话对于跳转跳转的系统的东西都是管用的。
    openurl 可以做的事情有很多 可以打开系统其他应用

    1.Map    http://maps.google.com/maps?q=Shanghai  
    2.Email  mailto://myname@google.com  
    3.Tel    tel://10086  
    4.Msg    sms://10086  
    

    我们应用中最常用的应该就是跳转到这是界面了。因为用户很多情况下会禁止应用访问隐私的一些东西(通讯录,短信等等)。我们要需要提醒用户打开,为了提高交互性。应该直接跳转到设置界面。

    //ios8
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
    

    如果想要跳转到具体的设置界面的话
    这下面有两个传送们,可以去看看。

    http://www.jianshu.com/p/19602f48309b
    http://blog.csdn.net/likendsl/article/details/7553605

    但跳转到系统应用返回就困难了,所以这种发短信的方式。不可取
    2 利用系统的messageUI框架

    #import <MessageUI/MessageUI.h>
    

    跳转到程序内的短信界面

        if ([MFMessageComposeViewController canSendText]) {
            MFMessageComposeViewController *messageVC = [[MFMessageComposeViewController alloc] init];
            messageVC.recipients = 这边填写要发送的短信好伐的数组;
            messageVC.body = 短信的内容;
            messageVC.messageComposeDelegate = self; //指定代理
            [self presentViewController:messageVC animated:YES completion:nil];
        } else {
            [PublicModel showHUDWithInfo:self andInfo:@"设备不支持短信功能"];
        }
    

    发送完短信,回到刚才的界面。都是模态视图的跳转

    #pragma mark MFmessageComposeViewControllerDelegate
    - (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result {
        if (result == MessageComposeResultCancelled) {
            [controller dismissViewControllerAnimated:YES completion:nil];
        } else if (result == MessageComposeResultFailed) {
            [controller dismissViewControllerAnimated:YES completion:^{
               // [PublicModel showHUDWithInfo:self andInfo:@"发送失败"];
            }];
        } else {
            [controller dismissViewControllerAnimated:YES completion:^{
               // [PublicModel showHUDWithInfo:self andInfo:@"发送成功"];
            }];
        }
       
        
    }
    

    相关文章

      网友评论

      本文标题:iOS 短信开发Tips(验证码,邀请好友)

      本文链接:https://www.haomeiwen.com/subject/wlirkttx.html