IOS 应用跳转 (IOS9白名单)
2024-10-10 06:50:11
跳转到指定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;
}
效果图七如下
最新文章
- JavaWeb_day05cookie_session_HttpSession
- POI完美解析Excel数据到对象集合中(可用于将EXCEL数据导入到数据库)
- genymotion和eclipse连接问题,一直出错
- Understanding, Operating and Monitoring Apache Kafka
- AutoCAD2007专业版
- NOI考前乱写
- 基于mAppWidget实现手绘地图(十五)–如何控制放大缩小
- ios录音Demo
- linux 下 查看是32位还是64位系统 命令
- Linux安装.net core
- IO流(4)—字符流
- 20170906xlVBA_CopyDataAndFormatFromSheets
- Python输出9*9 乘法表
- C++中的友元函数和友元类
- 转 PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
- 差分+树状数组【p4868】Preprefix sum
- 常用的http网页错误代码表---------495引发的一个简单到爆,但基于国内环境只能呵呵呵的血案
- Ajax获取服务器响应头部信息
- ES6中const的用法
- 用Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围
热门文章
- Asp.net Mvc4 使用Cas单点登录
- 4.3.3版本之引擎bug
- JavaScript手札:《编写高质量JS代码的68个有效方法》(一)(1~5)
- nodejs之获取客户端真实的ip地址+动态页面中引用静态路径下的文件及图片等内容
- asp.net JavaScriptSerializer实现序列化和反序列化
- C#设计模式——生成器模式(Builder Pattern)
- VS ";15"; 预览 5 中 VB 15 新增的功能
- C#为工作Sql而产生的字符串分割小工具(很实用,你值得拥有)
- 二、SQL语句映射文件(1)resultMap
- python 任意新闻正文提取