iOS开发之发送信息 邮件 打电话

2024-08-23 00:18

本文主要是介绍iOS开发之发送信息 邮件 打电话,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

创建MFMessageComposeViewController对象。

设置收件人recipients、

信息正文body,

主题subject

附件attachments(可以通过canSendSubject、canSendAttachments方法判断是否支持)

设置代理messageComposeDelegate(注意这里不是delegate属性,因为delegate属性已经留给UINavigationController,MFMessageComposeViewController没有覆盖此属性而是重新定义了一个代理),实现代理方法获得发送状态。

isSupportedAttachmentUTI  判断是否支持统一标识附件

根据URL路径和添加附件,返回YES表示添加成功

- (BOOL)addAttachmentURL:(NSURL *)attachmentURL withAlternateFilename:(NSString *)alternateFilename;

根据Data数据添加附件

- (BOOL)addAttachmentData:(NSData *)attachmentData typeIdentifier:(NSString *)uti filename:(NSString *)filename;

#import"ViewController.h"

//引入框架

#import

@interfaceViewController()

@property(nonatomic,strong)UIWebView*webView;

@end

@implementationViewController

- (void)viewDidLoad {

[superviewDidLoad];

// Do any additional setup after loading the view, typically from a nib.

UIButton*phoneButton = [UIButtonbuttonWithType:UIButtonTypeCustom];

phoneButton.frame=CGRectMake(100,100,100,100);

[phoneButtonsetTitle:@"打电话"forState:UIControlStateNormal];

[phoneButtonsetTitleColor:[UIColorredColor]forState:UIControlStateNormal];

[phoneButtonaddTarget:selfaction:@selector(phoneButtonAction:)forControlEvents:UIControlEventTouchUpInside];

UIButton*messageButton = [UIButtonbuttonWithType:UIButtonTypeCustom];

messageButton.frame=CGRectMake(100,240,100,100);

[messageButtonsetTitle:@"发信息"forState:UIControlStateNormal];

[messageButtonsetTitleColor:[UIColorredColor]forState:UIControlStateNormal];

[messageButtonaddTarget:selfaction:@selector(messageButtonAction:)forControlEvents:UIControlEventTouchUpInside];

UIButton*emailButton = [UIButtonbuttonWithType:UIButtonTypeCustom];

emailButton.frame=CGRectMake(100,400,100,100);

[emailButtonsetTitle:@"发邮件"forState:UIControlStateNormal];

[emailButtonsetTitleColor:[UIColorredColor]forState:UIControlStateNormal];

[emailButtonaddTarget:selfaction:@selector(emailButtonAction:)forControlEvents:UIControlEventTouchUpInside];

[self.viewaddSubview:phoneButton];

[self.viewaddSubview:messageButton];

[self.viewaddSubview:emailButton];

}

//电话有三种方法

- (void)phoneButtonAction:(UIButton*)button

{

//法一:没有弹窗提示直接运行不能回到原来的应用程序

//  tel://是代码规范

//    NSURL *url = [NSURL URLWithString:@"tel://15385548670"];

//    [[UIApplication sharedApplication] openURL:url];

//法二:有弹窗提示可以回到原来的应用程序

//  telprompt这个是苹果的私有方法应用程序中如果使用了这个方法审核会被驳回

//    NSURL *url = [NSURL URLWithString:@"telprompt://15385548670"];

//    [[UIApplication sharedApplication] openURL:url];

//法三:借助webView打电话有弹窗会回到原来的应用程序建议使用

//懒加载不要将webView添加到self.view如果添加的话会遮挡原应用程序

if(_webView==nil) {

_webView= [[UIWebViewalloc]init];

}

NSURL*url = [NSURLURLWithString:@"tel://15385548670"];

//创建一个请求

NSURLRequest*request = [NSURLRequestrequestWithURL:url];

//通过请求加载webView

[_webViewloadRequest:request];

}

//  message和email需要需要添加一个一个框架

- (void)messageButtonAction:(UIButton*)button

{

if([MFMessageComposeViewControllercanSendText]) {

//初始化一个控制器

MFMessageComposeViewController*messageVC = [[MFMessageComposeViewControlleralloc]init];

//设置短信内容

//设置收件人可设置多个

messageVC.recipients=@[@"15385548670"];

//设置短信内容

messageVC.body=@"

这篇关于iOS开发之发送信息 邮件 打电话的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1097810

相关文章

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

基于Java开发一个极简版敏感词检测工具

《基于Java开发一个极简版敏感词检测工具》这篇文章主要为大家详细介绍了如何基于Java开发一个极简版敏感词检测工具,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录你是否还在为敏感词检测头疼一、极简版Java敏感词检测工具的3大核心优势1.1 优势1:DFA算法驱动,效率提升10

基于Python编写自动化邮件发送程序(进阶版)

《基于Python编写自动化邮件发送程序(进阶版)》在数字化时代,自动化邮件发送功能已成为企业和个人提升工作效率的重要工具,本文将使用Python编写一个简单的自动化邮件发送程序,希望对大家有所帮助... 目录理解SMTP协议基础配置开发环境构建邮件发送函数核心逻辑实现完整发送流程添加附件支持功能实现htm

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块

Java 与 LibreOffice 集成开发指南(环境搭建及代码示例)

《Java与LibreOffice集成开发指南(环境搭建及代码示例)》本文介绍Java与LibreOffice的集成方法,涵盖环境配置、API调用、文档转换、UNO桥接及REST接口等技术,提供... 目录1. 引言2. 环境搭建2.1 安装 LibreOffice2.2 配置 Java 开发环境2.3 配

Python38个游戏开发库整理汇总

《Python38个游戏开发库整理汇总》文章介绍了多种Python游戏开发库,涵盖2D/3D游戏开发、多人游戏框架及视觉小说引擎,适合不同需求的开发者入门,强调跨平台支持与易用性,并鼓励读者交流反馈以... 目录PyGameCocos2dPySoyPyOgrepygletPanda3DBlenderFife