zoukankan      html  css  js  c++  java
  • IOS 应用跳转 (IOS9白名单)

    跳转到指定app的实现

    IOS中应用的跳转是通过URL实现的,因此在实现应用跳转之前我们要设置一下对应的URL。

    图一(寻找配置软件的URL)

    图二(具体配置选项)

    注意:

    如果IOS版本为IOS9 我们需要为app设置白名单。

    实现跳转的前提是有这个app,因此我们需要把被跳转的app先运行,即安装到模拟器中。

    如图三(在info中添加)

    效果图四

    代码:

    //
    //  ViewController.m
    //  X
    //
    //  Created by ma c on 16/4/9.
    //  Copyright © 2016年 bjsxt. All rights reserved.
    //
    
    #import "ViewController.h"
    
    @interface ViewController ()
    @property (weak, nonatomic) IBOutlet UIButton *button;
    
    @end
    
    @implementation ViewController
    - (IBAction)GoU:(id)sender {
        
        //获取跳转app的URl
        NSURL * url = [NSURL URLWithString:@"U://"];
        //判断手机中是否安装了对应的app
        if ([[UIApplication sharedApplication] canOpenURL:url]) {
            //打开应用程序
            [[UIApplication sharedApplication]openURL:url];
        }
    }
    - (void)viewDidLoad {
        [super viewDidLoad];
    }
    @end

    为了证明实现的是app之间的跳转:另附两张app的故事板截图

    X:图五

    U:图六

     跳转到指定页面的实现

    前提:我们想要从X跳转到U的朋友圈。

    那么X的代码如下:

    //
    //  ViewController.m
    //  X
    //
    //  Created by ma c on 16/4/9.
    //  Copyright © 2016年 bjsxt. All rights reserved.
    //
    
    #import "ViewController.h"
    
    @interface ViewController ()
    @property (weak, nonatomic) IBOutlet UIButton *button;
    
    @end
    
    @implementation ViewController
    - (IBAction)GoU:(id)sender {
        
        //获取跳转app的URl
        NSURL * url = [NSURL URLWithString:@"U://"];
        //判断手机中是否安装了对应的app
        if ([[UIApplication sharedApplication] canOpenURL:url]) {
            //打开应用程序
            [[UIApplication sharedApplication]openURL:url];
        }
    }
    - (IBAction)GoFriend:(id)sender {
        //获取跳转朋友圈的URl
        NSURL * url = [NSURL URLWithString:@"U://friend"];
        //判断手机中是否安装了对应的app
        if ([[UIApplication sharedApplication] canOpenURL:url]) {
            //打开朋友圈
            [[UIApplication sharedApplication]openURL:url];
        }
    }
    - (void)viewDidLoad {
        [super viewDidLoad];
    }
    @end

    我们不能仅仅对X进行设置更要对U进行设置。

    对U的代码操作在Appdeledate中。

    代码如下:

    - (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options{
        
        //将url转为字符串
        NSString * urlString = url.absoluteString;
        //判断是通过什么跳转过来的
        if ([urlString containsString:@"friend"]) {
            NSLog(@"在这里执行页面跳转即可。");
        }
        return YES;
    }

    效果图七如下

     

  • 相关阅读:
    玩转web之javaScript(五)---js和jquery一些不可不知的方法(input篇)
    设计模式 外观模式 一键电影模式
    设计模式 适配器模式 以手机充电器为例
    高仿微信5.2.1主界面架构 包含消息通知
    Java进阶 创建和销毁对象
    sql语句中单引号嵌套问题
    Spark SQL UDF和UDAF示例
    Spark Parquet使用
    iptables只允许指定ip访问本机的指定端口
    Spark On YARN内存和CPU分配
  • 原文地址:https://www.cnblogs.com/xubaoaichiyu/p/5372493.html
Copyright © 2011-2022 走看看