iOS:启动另外的APP并传递参数

iOS提供了一个Url scheme机制,使得APP之间可以通信,可以从一个APP启动另外的APP,并传递参数(如sms/mail)

但并非所有的APP都能够被启动,只有那些实现了Url scheme的APP才可以被启动。

基本的方法是:

创建一个NSURL对象(包含特定的内容格式)传递给UIApplication的openURL: 方法。openURL: 启动注册了该接收URL的APP并传递url,从而把控制权交给那个APP。

下面的代码简单说明了一个APP如何调用另外一个APP的服务,以及如何在URL中传递参数 (“todolist”是另外一个APP所注册的定制scheme):

NSURL *myURL = [NSURL URLWithString:@"todolist://www.acme.com?Quarterly%20Report#200806231300"];
[[UIApplication sharedApplication] openURL:myURL];

如果你的APP定义了一个定制URL scheme,那么应该实现一个scheme处理器,如这个链接所述 “Implementing Custom URL Schemes.”


关于Url scheme,这里有一篇入门指导:

http://mobile.tutsplus.com/tutorials/iphone/ios-sdk-working-with-url-schemes/


另外还有一个查询即有APP URL sheme的网站:

http://applookup.com/Home


关于URL Scheme更详细的内容,可参考:

Apple URL Scheme Reference.


by iefreer

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值