iOS 实用功能汇总(2)

Xcode IOS开发错误汇总 【错误信息】真机调试时出现如下错误:Code Signing ErrorSigning for "*****" requires a development team.Select a development team in the project editor.Code signing is required for product for product type 'Application' ... 阅读详情

1.打电话

1.第一种方法

这种方法在iOS8上测试的是不会出现弹框,直接进入到拨打电话界面,结束通话后会回到App界面。先跳出程序再进入到到系统的打电话程。

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel:%@",@"10010"]]];

2.第二种方法(慎用)

这种方法提交审核的时候,可能会被拒,所以慎用。。。最好不用。。。

这种方法会出现弹框,结束通话后会回到App界面。

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"telprompt://%@",@"10010"]]];

3.第三种方法

这种方法也会有弹框,结束通话后回到App界面,这种较第一种的区别在于: 一直都在自己的app中运行,没有出去过。

NSMutableString *str=[[NSMutableString alloc] initWithFormat:@"tel:%@",@"10010"];
    UIWebView *callWebview = [[UIWebView alloc] init];
    [callWebview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:str]]];
    [[UIApplication sharedApplication].keyWindow addSubview:callWebview];

发短信

需要导入MessageUI框架,#import <MessageUI/MessageUI.h>

if (![MFMessageComposeViewController canSendText]) return;
MFMessageComposeViewController *vc = [[MFMessageComposeViewController alloc] init];

    // 设置短信内容(这里可以设置短信内容,也可以不设置)
    //vc.body = @"Hello!";

    // 设置收件人列表(这里可以指定收件人,也可以不设置)
    //vc.recipients = @[@"10010", @"10086"];

    // 设置代理
    vc.messageComposeDelegate = self;

    // 显示控制器
    [self presentViewController:vc animated:YES completion:nil];

还要实现代理方法MFMessageComposeViewControllerDelegate:

- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result{

    // 关闭短信界面
    [controller dismissViewControllerAnimated:YES completion:nil];
    if (result == MessageComposeResultCancelled) {
        NSLog(@"取消发送");
    } else if (result == MessageComposeResultSent) {
        NSLog(@"已经发出");
    } else {

        NSLog(@"发送失败");
    }
}

发邮件

和发短信一样,只不过是MFMailComposeViewController

/ 不能发邮件
if (![MFMailComposeViewController canSendMail]) return;

MFMailComposeViewController *vc = [[MFMailComposeViewController alloc] init];

// 设置邮件主题
[vc setSubject:@"Hello"];
// 设置邮件内容
[vc setMessageBody:@"How are you?" isHTML:NO];
// 设置收件人列表
[vc setToRecipients:@[@"66666@qq.com"]];
// 设置抄送人列表
[vc setCcRecipients:@[@"66666@qq.com"]];
// 设置密送人列表
[vc setBccRecipients:@[@"66666@qq.com"]];

// 添加附件(一张图片)
UIImage *image = [UIImage imageNamed:@"pic.jpeg"];
NSData *data = UIImageJPEGRepresentation(image, 0.5);
[vc addAttachmentData:data mimeType:@"image/jepg" fileName:@"pic.jpeg"];

// 设置代理
vc.mailComposeDelegate = self;
// 显示控制器
[self presentViewController:vc animated:YES completion:nil];

同样实现代理:

- (void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error
{
    // 关闭邮件界面
    [controller dismissViewControllerAnimated:YES completion:nil];

    if (result == MFMailComposeResultCancelled) {
        NSLog(@"取消发送");
    } else if (result == MFMailComposeResultSent) {
        NSLog(@"已经发出");
    } else {
        NSLog(@"发送失败");
    }
}

跳转AppStore

NSString *str = [NSString stringWithFormat:
                 @"itms-apps://itunes.apple.com/cn/app/id%@?mt=8", appid];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]];
iOS 面试题汇总 1. 简单介绍下NSURLConnection类及+ sendSynchronousRequest:returningResponse:error:与– initWithRequest:delegate:两个方法的区别? 答: NSURLConnection主要用于网络访问,其中+ sendSynchronousRequest:returningResponse:error:是同步访问数据,即当... 阅读详情

相关推荐

本博客精品专栏汇总:《iOS进阶》、《iOS安全》(持续更新)

文章目录前言I、 iOS进阶II、iOS逆向III、 javaIV 、iOS基础 前言 “订阅”一次 ,享受终身服务的快乐 订阅任意专栏,享有全部专栏 I、 iOS进阶 进程间的实时通讯方案: local socket(解决扩展和容器应用的实时通讯问题) iOS14适配汇总:【1、隐私权限相关:定位、相册、IDFA 2、KVC相关:不允许访问 UIPageControl的pageImage3、UIView相关适配:UITableViewCell兼容等】 II、iOS逆向 III、 java

专注于计算机研发知识和资讯分享 6万+

iOS开发笔记之二十五——MFMailComposeViewController发送邮件实例

1、 (1)检查邮件功能是否已经打开     if (![MFMailComposeViewController canSendMail]) {          UIAlertView *wAlertView = [[UIAlertView alloc]initWithTitle:@"不能发送邮件"

iOS开发笔记 2643

iOS精品资源汇总(持续更新)

文章目录引言I、iOS自定义视图相关热门资源1.1 《用户协议及隐私政策》弹框1.2 电子签名1.3 商品详情页1.4 上传图片视图的封装【支持删除和添加】1.5 查看风险商户的证明材料,图片支持滑动切换1.6 iOS 常用动画【 定点缩放弹窗】1.7 iOS抽奖转盘:概率抽奖算法 & 转盘算法 & 转盘主视图的实现思路1.8 自定义相机( 银行卡/身份证识别OCR、矩形边缘识别)1.9 收银app必备模块:iOS折扣计算器1.10 通讯录1.11 限定文本输入框输入特定的字符个数1.12

专注于计算机研发知识和资讯分享 1万+

从CTF到实战:手把手教你搞定Chrome历史版本(79 vs 110)的密码取证与解密差异

本文深入解析Chrome 79与110+版本在密码取证与解密中的关键差异,涵盖DPAPI与AES-256-GCM加密机制对比,提供从CTF到实战的完整解密指南。通过Mimikatz、Master Key获取及自定义Python脚本等实战技巧,帮助安全人员高效处理电子取证中的Cookies、LoginData等敏感数据。

weixin_30480075的博客 432

iOS移动端安全相关知识汇总

iOS 设备的安全性得益于 Apple 的严格控制和封闭生态系统,但用户仍需保持警惕,采取有效的防护措施。通过了解常见的安全威胁、遵循最佳实践以及使用安全工具,可以显著提高 iOS 设备的安全性。

数据知道的博客 1万+

iOS15适配汇总

文章目录引言I、 UI相关适配1.1 tabbar及navicationbar 背景颜色1.2 tableView section的顶部高度 引言 I、 UI相关适配 1.1 tabbar及navicationbar 背景颜色 问题:没有使用UINavigationBarAppearance和UITabBarAppearance相关方法设置背景,在iOS15回导致背景颜色失效。 在iOS15设置颜色失效的相关方法 self.navigationController.navigationBar.barTint

专注于计算机研发知识和资讯分享 2741

Appium - iOS 各种问题汇总

Appium - iOS 各种问题汇总 作者: Max.Bai 时间: 2014/10 Appium - iOS 各种问题汇总  1. Appium 滑动:  swipe 有三种方式:  第一种:swipe JavascriptExecutor js = (JavascriptExecutor) driver; HashMap swipeObject =

Max's Note 9362

QMT实盘避坑指南:从环境配置到策略部署的完整流程(含国金证券路径设置)

本文是一份详尽的QMT实盘交易避坑指南,重点解析了从环境配置到策略部署的完整流程。针对国金证券QMT平台,文章深入剖析了核心架构、精准路径配置、关键参数解析、交易操作实战及异常处理,并提供了策略部署、监控与日志构建的完整方案,旨在帮助具备Python基础的开发者规避常见陷阱,实现稳定可靠的实盘交易。

weixin_29309475的博客 594

升级到iOS13.2后,新增了5个实用功能,却把微信害惨了

很多人选择苹果手机,都是看中了它的系统流畅性,最近iOS13.2更新了,那么有哪些新的功能和变化呢?下面将使用一台更新到iOS13.2的机型,演示给大家看。 一、Deep Fusion 首先苹果为iPhone11系列启用Deep Fusion功能,它是比Smart HDR更强大的拍照算法,是根据拍照场景自动开启,无需手动干预。 值得注意的是,必须打开【设置】-【相机】,关闭【超取景框拍摄照片】才能...

bangongguancang的博客 713

基于ROS的室内移动机器人自主导航技术

随着机器人技术的发展,近些年来室内移动机器人的研究热度越来越高。本文主要利用ROS操作系统对室内移动机器人的建图定位与自主导航关键技术进行研究。 ROS是目前开发较为完整具有广阔应用前景的开源机器人操作系统,具有分布式、模块化、代码复用等优良特点。同时ROS还提供了许多开源库,在这些库的基础之上研究同时定位与地图构建和机器人自主导航技术可以节省大量时间。 ORB-SLAM2是比较优秀的视觉SLAM算法之一,它具有计算量比较小、能够实时运行等优点。在介绍ORB-SLAM2的框架之前,首先会介绍视觉SLAM的一

weixin_44553616的博客 1910

IAR9.4报错之编码方式

IAR9.40编码方式错误导致的报错

qq_36081075的博客 2626

IOS动画库汇总

Core Animation笔记,基本的使用方法 - Core Animation笔记,基本的使用方法:1.基本动画,2.多步动画,3.沿路径的动画,4.时间函数,5.动画组。 awesome-ios-animation - iOS Animation 主流炫酷动画框架(特效)收集整理 收集整理了下iOS平台下比较主流炫酷的几款动画框架。 awesome-animation - 在内的十

fishmai的专栏 7270

别再盲调PID了!手把手教你用VOFA+实时可视化电机速度曲线(附STM32F4源码)

本文详细介绍了如何使用VOFA+工具实现PID参数的可视化调试,帮助开发者从盲调转向精准调优。通过实时可视化电机速度曲线,结合STM32F4源码示例,展示了如何高效调试Kp、Ki、Kd参数,解决响应慢、超调等常见问题,大幅提升电机控制系统的性能。

weixin_28366475的博客 129

关于IOS VideoToolBox的一些汇总

1. 至少从iPhone4开始,苹果就是支持硬件解码了,但是硬解码API一直是私有API,不开放给开发者使用,只有越狱才能使用,正常的App如果想提交到AppStore是不允许使用私有API的。 2. 从iOS8开始,可能是苹果想通了,开放了硬解码和硬编码API,就是名为 VideoToolbox.framework的API,需要用iOS 8以后才能使用,iOS 7.x上还不行。

dongtinghong的专栏 1万+

AI大模型探索之路-训练篇3:大语言模型全景解读

大规模语言模型(Large Language Models,LLM),也称大语言模型或大型语言模型,是一种由包含数百亿以上参数的深度神经网络构建的语言模型,通常使用自监督学习方法通过大量无标注文本进行训练。

寻道AI,探索AI无限可能! 6279

SAP 消息号T-CODE

SAP消息号修改汇总 确实有很多消息是可以修改的 FI: oBA5|oFMG|oFPM MM: oMRM|oKZZ|oMT4|oMCQ|o04C| SD: oVAH(V4)|oVM1(VL) CO:  oPR4_ACT|oPR4_CK|oPR4_CKML|oPR4_CKPF|oPR4_KKA|oPR4_KKP|oPR4_KKS| oPR4_KKS1|oPR4_P

heng0757的专栏 1万+

iOS crash 问题分析汇总

iOS bugly crash 问题分析 iOS Crash问题汇总 1. 线程问题 bugly上报问题:_WebThreadLock() 问题 在这里插入代码片 问题分析:是没有在主线程中刷新WebView reloadData 最近的專案中,需要在UITableView中放UIWebView,webview本身會有webthreadlock,因為他在reload之後是UI的re-ren...

kyl282889543的博客 3548

TC3XX - MCAL知识点(三):MCU EB-tresos配置说明及代码浅析

AURIX 2G Tc3xx的配置相较AURIX 1G Tc2xx来讲简化了许多,但是依赖于数据手册的理解来讲整个MCU功能做了较大增强,此处先简单的介绍一下,本文前期先补充介绍一下英飞凌手册的阅读规则,因为后面的文章会基于此文的一些缩写进行截图寄存器之类的。MCU在AUTOSAR架构里面的图示如下MCU驱动程序负责配置SCU、GTM、CCU6、GPT12和STM外设。驱动程序提供由AUTOSAR指定的运行时服务。

梦想技术家 2875

iOS UIScrollView的代理方法汇总

iOS UIScrollView的代理方法汇总

fongim的博客 1578

基于网关实现不同网段S7-1200 CPU的通信方法

在A网段的计算机上ping B网段的计算机:在A网段的计算机上使用ping命令,向B网段的计算机发送数据包。在B网段的计算机上ping A网段的计算机:同样地,在B网段的计算机上使用ping命令,向A网段的计算机发送数据包。数据包也会经过路由器进行转发,最终到达A网段的计算机。配置路由器:在路由器上配置两个网段的IP地址和子网掩码,并设置路由表,使得路由器可以将A网段和B网段之间的数据进行转发。确定两个网络之间的路由器:假设需要将A网段和B网段进行通信,需要在A、B两个网段之间设置一台路由器。

电工 2400

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

IOS学习网站汇总

1.前言 经过一阵的纠结和挣扎,终于决定步入IOS移动终端开发人潮之中了,学知识不能光说不练,要理论联系实际,在此特别感谢优快云给大家一个学习的空间,可以和大家互相交流,我也是一个新手,希望跟大家共同进步,为了梦想而前进,闲话少说,下面步入正题。 2.IOS开发网站汇总 今天就先汇总一些IOS常用的学习网站,与大家分享: (1)http://write.blog.youkuaiyun.com   首

Developer_Zhang的专栏 4882

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

iOS9.2 Beta2固件下载地址汇总 附更新内容

苹果今天凌晨发布了iOS9.2第二个测试版本——iOS9.2 beta2,此次更新的版本号为13C5060d。现在小编为大家带来了iOS9.2 beta2固件下载地址汇总,有需要的快来看看吧。   此次更新在iOS9.2 Beta1的基础上加强了Safari浏览器与第三方app的兼容性,另外还对Done按钮位置进行了调整,目前该按钮已由旧版本的界面左上角位置调至右上角,更加方便单手操作。 ...

张掖小高图文设计工作室 513

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

iOS 实用功能汇总(1)

1.去掉tableview header的黏性- (void)scrollViewDidScroll:(UIScrollView *)scrollView { [self.searchBar resignFirstResponder]; if (scrollView == self.listTableView) { CGFloat sectionHeaderHeigh

岁月静好,善待时光。 422

iOS微信增强插件:10+实用功能解锁微信新玩法

你是否曾因重要消息被撤回而懊恼?是否想在朋友圈运动排行榜上轻松霸榜?是否希望远程控制电脑只需微信一键操作?WeChatPlugin-iOS 开源项目为你带来这些实用功能!这款iOS微信增强插件集成了防撤回、远程控制、红包助手等10余项实用功能,无需越狱即可轻松安装,让你的微信体验全面升级。 ## 🔍 痛点分析:为什么你需要这个插件? ### 微信使用中的常见困扰 - **消息被撤回**:重要

gitblog_00683的博客 263

iOS微信终极增强插件:10大实用功能让微信体验全面升级

还在为错过重要消息而懊恼?想要更智能的微信使用体验?这款名为WeChatPlugin-iOS的开源iOS微信增强插件正是你需要的解决方案!无需越狱,通过简单配置就能为你的微信添加防撤回、远程控制、自动抢红包等十余项实用功能,让微信从简单的通讯工具变成强大的生产力助手。 ## 🎯 为什么需要微信增强插件?解决三大痛点 你是否遇到过这些烦恼? **痛点一:重要消息被撤回** - 商务沟通中对方

gitblog_00346的博客 168
上一篇: iOS 实用功能汇总(1)
下一篇: iOS 本地通知
Three_Zhang
博客等级 码龄11年 19粉丝 75原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值