简介

app中的跳转,分两种情况。第一种是启动内置的应用,一般的电话,浏览器,短信和邮件可以直接调用并添加参数. 第二种, 打开另一个外置的 app,如自己开发的应用,qq 微信微博等.
这些跳转都是可以通过openURL来实现。

内置应用跳转

浏览器

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"http://"]]) {[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.baidu.com"]];
}

打电话

 if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"tel://"]]) {[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://10086"]];//        //拨号前询问,拨号后返回, 私有API,所以可能不会被审核通过//        [[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"telprompt:// 10010"]];
}

发邮件

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"mailto://"]]) {[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://wangyanchang21@163.com"]];
}

发短信

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"sms://"]]) {[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms://10086"]];
}

另外, 还有一个内置的调用系统发短信的功能, 需要导入MessageUI.framework,并引入头文件#import <MessageUI/MessageUI.h>

调起发送短信功能:

if( [MFMessageComposeViewController canSendText]){MFMessageComposeViewController *messageController = [[MFMessageComposeViewController alloc] init];messageController.view.backgroundColor = [UIColor whiteColor];messageController.delegate = self;messageController.messageComposeDelegate = self;messageController.body = message;messageController.recipients = @[phoneNum];messageController.navigationBar.tintColor = [UIColor blackColor];//推到发送试图控制器[self presentViewController:messageController animated:YES completion:nil];}else{// Toast: 该设备不支持短信功能}
//发送短信后回调的方法
-(void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{switch (result) {case MessageComposeResultCancelled://已取消发送短信break;case MessageComposeResultFailed://短信发送失败break;case MessageComposeResultSent://短信发送成功break;default:break;}[self dismissViewControllerAnimated:YES completion:nil];
}

外置应用跳转

第二种情况是要跳转至自己开发的app,这种情况则要为将要打开的app注册一个URL协议。这个可以在项目的文件info.plist中注册。主要操作为:
Step1. 右键,选择“Add Row”
Step2. Key值选择“URL types”
Step3. 打开“Item 0″,然后为该key增加一个URL identifier。可以是任何值,但建议用“反域名”(例如 “com.fcplayer.testHello”)。
Step4. 在“Item 0”下再加一行。
Step5. 选择“URL Schemes” 作为Key。
Step6. 输入你的URL协议名 (例如“testHello://” 应写做“testHello”)。如果有必要,你可以在这里加入多个协议。

其实在打开的时候只需要URL Schemes即可,URL identifier是可选项。如果需要传送参数,可以在URL Schemes://添加你的参数,格式和网页开发的传递参数差不多。(又或者URL Schemes://URL identifier@添加的参数)关键是要和接收参数方定义好处理的方式。然后在需要打开的地方添加代码:

以下是当前需要被跳转的 App 中plist 文件中的注册的 URL:

当前 App 设置URL 为 testHello, 所以将下面代码写入其他项目, 将会自动跳入本 App

    NSString *url = @"testHello://";[[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];

应用跳转(打电话/短信/邮件/浏览器/其他应用)相关推荐

  1. SAP中用json数据格式调用http接口发送短信邮件案例

    在系统 VL02N 交货过账后触发发送邮件.短信的功能,短信邮件接口是经过第三方系统封装,然后开发出的API接口. 请求地址: http://180.167.01.01/ns/sends 请求方式: ...

  2. Winform开发框架之通用短信邮件通知模块

    在做Winform项目的时候,一直有一个梦想,就是希望把所有的组件模块组合即可组装成一个完整的项目系统(或者至少可以大部分完成).在之前介绍的<Winform开发框架之通用附件管理模块>里 ...

  3. 创宇滤镜|API防刷|短信邮件接口防刷|验证码防刷|搜索防刷 - 知道创宇云安全

    创宇滤镜|API防刷|短信邮件接口防刷|验证码防刷|搜索防刷 - 知道创宇云安全 创宇滤镜|API防刷|短信邮件接口防刷|验证码防刷|搜索防刷 - 知道创宇云安全 posted on 2017-02- ...

  4. 关于日历点击跳转以及短信点击跳转到指定联系人界面的一些记录

    点击跳转到日历指定日期: Intent intent = new Intent(Intent.ACTION_VIEW)    .setFlags(Intent.FLAG_ACTIVITY_NEW_TA ...

  5. 三方支付四方支付聚合支付系统 集成 支付宝分账 代付 多商户 短信邮件 谷歌令牌验证

    三方 四方支付聚合系统 集成 支付宝分账 短信 邮件 谷歌令牌多种验证 1.系统为成熟运营版,完美对接邮件系统2.短信系统为阿里和短信宝,可多通道切换 3.增加安全机制集成了谷歌令牌 4.成熟的商户, ...

  6. 【数据科学项目02】:NLP应用之垃圾短信/邮件检测(端到端的项目)

    垃圾短信检测(端到端的项目) 我们都听说过一个流行词--"数据科学".我们大多数人都对"它是什么?我可以成为数据分析师或数据科学家吗?我需要什么技能?并不是很了解.例如: ...

  7. 用MAPI操作短信邮件

    用MAPI操作短信邮件 MAPI函数不仅可以读取短信,还可以创建短信,读写邮件等. 具体有哪些功能我也说不全,可以自己google一下.这里只详细说明MAPI读取短信或邮件的过程.在网上其他地方也有不 ...

  8. 安卓开发中发送短信的方法 APP内单发短信 群发短信 APP跳转到短信页 单条短信 多条短信Intent跳转

    1.APP内部直接发送短息 包括发送单条短信 发送多条短信 APP内部发送短信首先要获取一个发送短信的权限 <uses-permission android:name="android ...

  9. 开放性兼容短信邮件接口,支持各种语言接入的短信邮件平台-kewail

    兼容各种语言接入,有多种现成的demo直接调用,几分钟就能接入使用. demo下载链接:https://www.kewail.com/experience.html#anchor-1 106短信接口和 ...

最新文章

  1. Windows下关于Composer使用时出现的问题及解决办法
  2. 函数字节不对齐函数崩溃_Excel中统计字符数,不需要一个一个的数,len函数能轻松搞定...
  3. 详细讲解Python字符串的各种内置方法
  4. Golang之 ==和deepEqual
  5. git 在本地新建分支之后上传代码到远程
  6. 文本比较算法Ⅱ——Needleman/Wunsch算法
  7. SAP CRM service contract和individual object
  8. 现代软件工程 作业汇总
  9. 今天rpm装glibc和glibc-common版本,出现二个包相互依赖,解决办法
  10. 【CSP201312-3】最大的矩形,单调栈
  11. 苹果App Store应用程序的下载链接地址
  12. Python数据处理之数据聚合
  13. TD-LTE无线帧中Tf和Ts是什么?
  14. APView500电能质量在线监测装置 谐波分析 电压不平衡
  15. Notepad++安装HexEditor插件
  16. 【译】The Science of Scientific Writing
  17. java变位词_Java程序检查字符串是否是变位词
  18. Android 图片添加水印
  19. R学习之统计实验(三)--报童问题(R语言编程)-----数模
  20. (在WPS或者WORD中使用MathType编辑数学公式)写论文必备

热门文章

  1. ARFoundation之路-视频播放
  2. 窥探现代浏览器架构(二)
  3. 利用阿里云主机快速搭建基于wordpress的个人博客网站
  4. PHP软件库源码+支持CDKey卡密充值
  5. windows开机启动项设置
  6. 转行IT行业怎么学习比较好
  7. 论文阅读:Deep convolutional neural networks for pan-specific peptide-MHC class I binding prediction
  8. 怎么恢复回收站清空删除的文件
  9. 简历制作要点与面试技巧
  10. 智能风扇APP开发优点