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文件