IOS学习 访问其他应用并交互

应用之间调用 UIApplication类的OpenURL方法  

一、UIApplication类的OpenURL方法

1、调用app store界面方法

在实际开发中,往往要推荐自己其他应用和推荐自己的收费软件,那么我们就需要在程序中直接连接到app store的相应页面。

实际上的做法很简单,使用的还是UIApplication类的OpenURL方法: 

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"程序的相应连接"]];


2、调用其它应用的方法

// 调用 自带mail

[[UIApplicationsharedApplication] openURL:[NSURLURLWithString:@"mailto://admin@hzlzh.com"]];

// 调用 电话phone

[[UIApplication sharedApplication] openURL:[NSURLURLWithString:@"tel://8008808888"]];

// 调用 SMS

[[UIApplicationsharedApplication] openURL:[NSURL URLWithString:@"sms://800888"]];

// 调用自带 浏览器 safari

[[UIApplicationsharedApplication] openURL:[NSURLURLWithString:@"http://www.hzlzh.com"]];

// 调用 Remote

[[UIApplicationsharedApplication] openURL:[NSURL URLWithString:@"remote://fff"]];

调用phone可以传递号码,调用SMS只能设定号码,不能初始化SMS内容。


二、应用程序间通信

1、调在plist文件中,注册对外接口

找到appname-info.plist文件,点击打开它,在列表中找到URL types(如果没有,可添加一个URL types )里面的内容设置看下图:

应用之间调用 UIApplication类的OpenURL方法 - Awei - 半调子程序员
 

关键Key和Value是 URL identifier => com.zilanxing.andpush;URL Schemes => andpush

到此对外接口已注册好

2、调用上面的接口通信

这时使用其他程序调用

[[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"andpush://"]]

这里@"andpush://"的内容 取决于URL Schemes => andpush

返回YES

调用下面实现切换到andpush  APP

        NSURL *url = [NSURL URLWithString:@"andpush://test"];

        [[UIApplication sharedApplication] openURL:url];


andpush APP的下面方法中实现:

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

{

    if ([url.host isEqualToString:@"test"])

    {

        NSLog(@"其他APP 访问我了!!!!!");

    }

}

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url

{

  //在这里也可以实现上面的东西

    if (!url) {

         return NO;

    }

    if  ([url. host   isEqualToString : @"test" ])

    {

//根据具体url进行页面的切换或者响应

    }

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值