美文网首页
iOS应用间跳转(带参数)

iOS应用间跳转(带参数)

作者: Tony_HYH | 来源:发表于2019-02-28 19:57 被阅读0次
封面图.jpeg

iOS的应用间跳转,项目A内点击按钮,或者其他操作,唤醒项目B,项目B做一定的响应操作。

一、配置信息

两个应用间通信,需要遵循同一个协议规范,类似于微信第三方登录,需要在Info.plist中添加白名单。

首先,在项目B的Info.plistURL types中添加一组数据,如下图所示
openURL为双方设定的共同遵循的协议名字,可以随意设置,但不要和其他的重复,最好是项目A的名称。
URL identifier为项目A的Bundle identifier,可以在项目A的TARGET里复制过来

项目B Info.plist配置.png

二、触发跳转操作

在项目A中需要实现跳转的操作中,比如按钮的点击事件中,实现以下代码

- (void)tapOpenURL{
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"openURL://"] options:@{} completionHandler:^(BOOL success) {
        // success to do
    }];
}

@“openURL://"中,openURL为项目B中配置的共同协议,可以在这个url后拼接想要传递的参数

三、url回调处理

以上完成,在项目B的AppDelegate里实现应用url的回调方法,

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options{
    NSLog(@"=========%@========",url);
//    微信登录
//    return [WXApi handleOpenURL:url delegate:[WXApiManager sharedManager]];
    return YES;
}

在这里可以获得从项目A中传递过来的url,并取得参数,然后就可以做相应的各种处理了。

//iOS10后,下面的方法被废弃了,用上面的那个方法取代
-(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
    return YES;
}

相关文章

  • iOS应用间跳转(带参数)

    iOS的应用间跳转,项目A内点击按钮,或者其他操作,唤醒项目B,项目B做一定的响应操作。 一、配置信息 两个应用间...

  • 本地通知

    iOS7 iOS8要获取用户允许 接收到通知时带参数应用程序跳转

  • 网页端如何判断native app是否安装并跳转到app具体页面

    iOS端 scheme iOS中应用间进行通信的技术,可以带参数。格式类似于http openUrl 指打开URL...

  • CBB 的APP跳转文档

    CBB 的APP跳转文档 目前跳转采用没有带参数的方式,后期会进行参数携带,再另行更新. 一. iOS: 1.判断...

  • 获取plist中的URL Schemes

    最近在写的项目中涉及到了应用间的跳转实现,iOS实现跳转应用是通过 openURL:方法; 此时遇到多个应用跳转到...

  • iOS应用间跳转

    场景需求:一个应用A(以news应用为示例)跳转到另外一个应用B(以weChat为示例),常见需求如下1.应用推荐...

  • iOS应用间跳转

    1.应用通过配置URL schemes进行标识(可以配置多个URL schemes)。跳转到其他应用就必须知道这个...

  • ios 应用间跳转

    1.先来看看效果,这里做了三个功能 从MyApp跳转到YourApp 从MyApp跳转到YourApp的指定页面 ...

  • iOS - 应用间跳转

    在平常的开发中,会经常遇到从我们自己的App跳转到其他App,如微信分享,第三方支付,使用系统的内置程序等; 应用...

  • C#页面跳转的几种方式

    C#页面跳转的几种方式 方式一 html中不带参数跳转:带参数跳转: 方式二 js控制页面跳转带参数和不带参数 方...

网友评论

      本文标题:iOS应用间跳转(带参数)

      本文链接:https://www.haomeiwen.com/subject/ccbkuqtx.html