2.iOS 短信|邮件|电话|摇一摇|二维码|静态库创建步骤

1.  发送短信/邮件:

   -》导入MessageUI框架

   发送短信的方式

   方式一:直接使用NSUrl* url = [NSURL URLWithString:@“sms://1858843140”];

                   让后调用application的单利对象openUrl

   方式二:构建方法采用UIMessageComposeViewController创建messager,并推出控制器

                   showMessageViewWithRecipients: 电话号码 title:标题  body:短信内容

                   然后判定是否能发送短信,设置recipients,body,title,message delegate,

                    navigationBar.tintColor -》推出控制器

                   在代理的                 

                    messageComposeViewController  didFinishWithResult中进行操作

   发送邮件的方式 

    使用MFMailComposeViewController 判定是否可以发送邮件

    然后设置subject,ToRecipients,Cc,Bc,   addAttachmentData:ImageData,setMessageBody等

    然后推出控制器;

    html:这是我的周报<font color=\“red\”>周报内容</font>请查阅”

    在MFMailComposeViewController的代理方法didFinishWithResult中实现发送完成的动作,然后关闭控制器。

 

3. 短信验证码:

    -》 注册mob.com的账号,创建一个应用的appKey和appSercet

    -》 导入库文件:

     JaveScriptCore.framework/libstdc++.tbd,MessageUI.frameWork,libicucore.tbd,libz.tbd

     拖入SMS_DSK文件

     -》在appDelegate中注册,appKey和appSecret 

     ///////////////在实现文件中获取验证到手机,并对输入框的验证码与手机上的验证码进行确认

    [SMSSDK  getVerificationCodeByMethod:SMSGetCodeMethodSMS  phoneNumber:@“”手机号码 zone:”86” customIdentifier:nil s result:^(NSError* error ) {

    //结果判断

  }]

     SMSSDK commitVerificationCode:self.msgCodeFeild.text phoneNumber:@"你的手机号码" zone:@"86" result:^(NSError *error)

 

4. 应用程序间的通信:

       -》建立两个应用程序,YourApp,MyApp

        -> 在URLTypes 中的schemes中设置自己app的标示

        -> LSApplicationQueriesSchemes  设置可以跳转的白名单

        跳转原理使用Application的单利对象发送Url请求

        URL格式  @“YourApp://aaa?backscheme=MyApp”

             协议名为将要跳转的app, backscheme为自己的app表示,在对方的白名的那中国年添加此标示。

         //到?之间的数字主要是为了表示跳转到另外一个程序中的哪一个页面。

 

        //被跳转的应用相关设置:

       **** 在被跳转的应用中一般在appDelegate截取跳转的类容,并将返回app的scheme截获,方便返回。

       实现此方法截获

       application: openUrl: sourceApplication: annotation方法

       通过一个属性接受返回app的scheme

       对url进行判定

          UINavigationController *navi = ( UINavigationController *)self.window.rootViewController;

    ViewController *mainVc = (ViewController *)navi.topViewController;

    NSString *urlString  = url.absoluteString;

    NSRange range = [urlString rangeOfString:@"backscheme="];

    if (range.length > 0) {

        NSInteger fromIndex = range.length + range.location;

        NSString *backSch = [urlString substringFromIndex:fromIndex];

        mainVc.backscheme = backSch;

    }

    if ([urlString hasPrefix:@"YourApp://bbb"]) {

        [mainVc  performSegueWithIdentifier:@"yourAppPage2" sender:nil];

    }

  

5. 库:

    静态库:

     ->在应用中,有一些公共的需要反复使用的代码,需要隐藏代码的实现,可以把这部分库氛围静态库;分为开源库与,非开源库。

    三方框架AFNetWorking,SDWebImage

    .h主要负责文件方法和属性,代理,协议的说明;.m文件负责实现

    静态库之际就是经过链接将编译.o 文件转换成链接.exe文件; 我们可以exe文件移植到其它的项目中去。  .a结尾

     动态库:

           ->多个程序连接的时候不会将程序拷贝到可执行程序中,都会引用这个动态库资源的地址(说明性方式,告诉在哪里); 苹果官方不允许app上线时使用动态库。动态的库的明显好处,比如现在又100个应用程序都需要进行升级,在服务器端可直接升级。   常用于系统,UNIX 服务器,c语言,系统中使用。 .frameWork结尾

     制作静态库:

     ->新建应用程序->FrameWork&Library->Cocoa Touch FrameWork/Cocoa Touch Static Library

     -> 需要将模拟器和真迹调试同时运行,生成库文件

     -> 合并库文件  cd  跳转到真机和模拟器库文件目录->lipo -create Debug-iphoneos/库名  Debug-iphonesimulator/库名 output 合并的新库名 ->拖入.h文件

 

posted @ 2016-02-28 20:33  阿甘左  阅读(108)  评论(0编辑  收藏  举报