URL Scheme 简介
URL Scheme 简介
原文
比较详细的介绍[包含了如何查找 App 的 URL Scheme]
前言
iPhone / iOS SDK 特性之一是可以将 iOS Application 绑定到一个自定义的 URL Scheme 上,在浏览器上或其他应用中可以通过该 URL Scheme 来启动应用。
创建 URL Scheme
1. Info.plist -> 添加 URL Types 行。2. URL identifier 用来作为自定义 URL Scheme 的唯一标识。3. Item 0 -> 添加 URL Schemes 行 -> 填写自定义 URL Scheme
注意:
URL Schemes 是一个数组,允许应用定义多个 URL scheme。如分享时添加微信、QQ、微博的 URL scheme。上图得到的 URL Scheme : "imcoktestextension://"
使用 URL Scheme
// 普通使用(直接打开应用)
NSString *customURL = @"imocktestextension://";
NSURL *openURL = [NSURL URLWithString:customURL];
if([[UIApplication sharedApplication] canOpenURL:openURL]) {[[UIApplication sharedApplication] openURL:openURL];
}
else{NSLog(@"Failed to open URL");
}
// 普通使用(打开应用的同时传递信息)
NSString *customURL =@"imocktestextension://info";
NSURL *openURL = [NSURL URLWithString:customURL];
if([[UIApplication sharedApplication] canOpenURL:openURL]) {[[UIApplication sharedApplication] openURL:openURL];
}
else{NSLog(@"Failed to open URL");
}
// 被打开应用监听 URL Scheme NS_AVAILABLE_IOS(9_0) iOS 9 之前是另一个接口
- (BOOL) application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options {NSString* prefix = @"imcoktestextension://";if ([[url absoluteString] rangeOfString:prefix].location != NSNotFound) {NSString* action = [[url absoluteString] substringFromIndex:prefix.length];if ([action isEqualToString:@"ShowImage"]) { // 展示图片页NSLog(@"我想去 ShowImage 页面");[[NSNotificationCenter defaultCenter] postNotificationName:kNotificationShowImage object:nil];}}return YES;
}
注意:
NSURL 作为从一个应用调用另一个的基础,需要遵循 RFC 1808(Relative Uniform Resource Locators)标准。所以常用的基于网页内容的 URL 格式也适用于 URL Scheme。比如 imocktestextension://info 可以当作一个普通 URL 进行拆分,也可以直接使用 Safari 打开(前提手机装有 App)。
转载于:https://www.cnblogs.com/imock/p/6775083.html
URL Scheme 简介相关推荐
- android url scheme 跳转传值,如何自定义 URL Scheme 进行跳转
一.URL Scheme 简介和作用 在 :// 之前的部分就称为 URL Scheme. 也就是说 http://www.jianshu.com/ 的 URL Scheme 就是 http . 更多 ...
- MobLink网页跳转app指定界面技术简介之 URL Scheme
URL Scheme是什么 由于苹果的app都是在沙盒中,相互是不能访问数据的.但是苹果还是给出了一个可以在app之间跳转的方法:URL Scheme.简单的说,URL Scheme就是一个可以让ap ...
- url scheme Linux,自定义URL Scheme完全指南
iPhone / iOS SDK 最酷的特性之一就是应用将其自身"绑定"到一个自定义 URL scheme 上,该 scheme 用于从浏览器或其他应用中启动本应用. 注册自定义 ...
- (0089)iOS开发之iOS应用间相互跳转(URL Scheme)
需求:假设有应用A和应用B两个应用,现在需要从应用A跳转到应用B中.如果手机中没有安装跳到下载页,如果已经安装直接打开APP. 认识URL Scheme URL Schemes是苹果给出的用来跳转到系 ...
- Xamarin.Forms 中iOS通过URL Scheme判断应用是否安装
Xamarin.Forms 中iOS通过URL Scheme判断应用是否安装 在移动应用开发中,经常需要判断一个app是否安装,iOS中有什么方式可以判断app是否安装呢? 这里介绍通过Url Sch ...
- 自定义 URL Scheme 完全指南
本文转自 Migrant的博客,原文:<The Complete Tutorial on iOS/iPhone Custom URL Schemes> iPhone / iOS SDK 最 ...
- Android之okdownload下载提示奔溃Expected URL scheme ‘http‘ or ‘https‘ but was ‘data‘
1 问题 客户现场奔溃在firebase上面提示错误信息如下 Fatal Exception: java.lang.IllegalArgumentException: Expected URL sch ...
- 自定义URL Scheme完全指南
iPhone / iOS SDK 最酷的特性之一就是应用将其自身"绑定"到一个自定义 URL scheme 上,该 scheme 用于从浏览器或其他应用中启动本应用. 注册自定义 ...
- 支付宝问题LaunchServices: ERROR: There is no registered handler for URL scheme alipay
LaunchServices: ERROR: There is no registered handler for URL scheme alipay (这句话其实是在告诉你 设备上没有安装 支付宝的 ...
最新文章
- 第24讲 | 比特币专题(一)历史与货币
- 女性程序员占比超17%,平均月薪近2万 | 程序员就业大数据报告
- ifconfig,netstat 命令找不到解決办法
- Product mass creation tool
- 女生做一个“程序猿”,真有那么不现实吗?正在学编程的女孩子注意了!
- C#LeetCode刷题-字符串
- mysql 使用service mysqld start 提示未识别服务 进入/etc/rc.d/init.d 下面未发现有mysqld解决方法
- pve 虚拟环境 vi/vim不能右键粘贴设置方法
- jnid中mysql的驱动类_JDBC与JNDI的区别
- spss之数据预处理
- 为什么有的chm会显示“已取消到该网页的导航”?
- 基于灰度投影法的图片偏移测量
- 【docker】docker容器端口如何暴漏出来?
- 神操作 用 Python 操作 xmind 绘制思维导图
- 15000个常用的英语单词
- TiDB 在华泰证券的探索与实践
- 计算两个时间的时间差(C语言)
- 一个对小学生的随机生成的四则运算试题
- App引流推广:能够提高用户的转化的技术
- Oracle 状告 Google 侵犯专利