调用的小例子
1、调用 自带mail |
02 |
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@ "mailto://admin@hzlzh.com" ]]; |
03 |
04 |
2、调用 电话phone |
05 |
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@ "tel://8008808888" ]]; |
06 |
iOS应用内拨打电话结束后返回应用 |
07 |
一般在应用中拨打电话的方式是: |
08 |
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@ "tel://123456789" ]]; |
09 |
10 |
使用这种方式拨打电话时,当用户结束通话后,iphone界面会停留在电话界面。 |
11 |
用如下方式,可以使得用户结束通话后自动返回到应用: |
12 |
UIWebView*callWebview =[[UIWebView alloc] init]; |
13 |
NSURL *telURL =[NSURL URLWithString:@ "tel:10086" ]; // 貌似tel:// 或者 tel: 都行 |
14 |
[callWebview loadRequest:[NSURLRequest requestWithURL:telURL]]; |
15 |
//记得添加到view上 |
16 |
[self.view addSubview:callWebview]; |
17 |
18 |
还有一种私有方法:(可能不能通过审核) |
19 |
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@ "telprompt://10086" ]]; |
20 |
21 |
3、调用 SMS |
22 |
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@ "sms://800888" ]]; |
23 |
24 |
4、调用自带 浏览器 safari |
25 |
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@ "http://www.hzlzh.com" ]]; |
26 |
27 |
调用phone可以传递号码,调用SMS 只能设定号码,不能初始化SMS内容。 |
28 |
29 |
若需要传递内容可以做如下操作: |
30 |
加入:MessageUI.framework |
31 |
32 |
#import <MessageUI/MFMessageComposeViewController.h> |
33 |
34 |
实现代理:MFMessageComposeViewControllerDelegate |
35 |
36 |
37 |
38 |
调用sendSMS函数 |
39 |
//内容,收件人列表 |
40 |
- ( void )sendSMS:(NSString *)bodyOfMessage recipientList:(NSArray *)recipients |
41 |
{ |
42 |
43 |
MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init] autorelease]; |
44 |
45 |
if ([MFMessageComposeViewController canSendText]) |
46 |
47 |
{ |
48 |
49 |
controller.body = bodyOfMessage; |
50 |
51 |
controller.recipients = recipients; |
52 |
53 |
controller.messageComposeDelegate = self; |
54 |
55 |
[self presentModalViewController:controller animated:YES]; |
56 |
57 |
} |
58 |
59 |
} |
60 |
61 |
// 处理发送完的响应结果 |
62 |
- ( void )messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result |
63 |
{ |
64 |
[self dismissModalViewControllerAnimated:YES]; |
65 |
|
66 |
if (result == MessageComposeResultCancelled) |
67 |
NSLog(@ "Message cancelled" ) |
68 |
else if (result == MessageComposeResultSent) |
69 |
NSLog(@ "Message sent" ) |
70 |
else |
71 |
NSLog(@ "Message failed" ) |
72 |
} |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构