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 简介相关推荐

  1. android url scheme 跳转传值,如何自定义 URL Scheme 进行跳转

    一.URL Scheme 简介和作用 在 :// 之前的部分就称为 URL Scheme. 也就是说 http://www.jianshu.com/ 的 URL Scheme 就是 http . 更多 ...

  2. MobLink网页跳转app指定界面技术简介之 URL Scheme

    URL Scheme是什么 由于苹果的app都是在沙盒中,相互是不能访问数据的.但是苹果还是给出了一个可以在app之间跳转的方法:URL Scheme.简单的说,URL Scheme就是一个可以让ap ...

  3. url scheme Linux,自定义URL Scheme完全指南

    iPhone / iOS SDK 最酷的特性之一就是应用将其自身"绑定"到一个自定义 URL scheme 上,该 scheme 用于从浏览器或其他应用中启动本应用. 注册自定义 ...

  4. (0089)iOS开发之iOS应用间相互跳转(URL Scheme)

    需求:假设有应用A和应用B两个应用,现在需要从应用A跳转到应用B中.如果手机中没有安装跳到下载页,如果已经安装直接打开APP. 认识URL Scheme URL Schemes是苹果给出的用来跳转到系 ...

  5. Xamarin.Forms 中iOS通过URL Scheme判断应用是否安装

    Xamarin.Forms 中iOS通过URL Scheme判断应用是否安装 在移动应用开发中,经常需要判断一个app是否安装,iOS中有什么方式可以判断app是否安装呢? 这里介绍通过Url Sch ...

  6. 自定义 URL Scheme 完全指南

    本文转自 Migrant的博客,原文:<The Complete Tutorial on iOS/iPhone Custom URL Schemes> iPhone / iOS SDK 最 ...

  7. Android之okdownload下载提示奔溃Expected URL scheme ‘http‘ or ‘https‘ but was ‘data‘

    1 问题 客户现场奔溃在firebase上面提示错误信息如下 Fatal Exception: java.lang.IllegalArgumentException: Expected URL sch ...

  8. 自定义URL Scheme完全指南

    iPhone / iOS SDK 最酷的特性之一就是应用将其自身"绑定"到一个自定义 URL scheme 上,该 scheme 用于从浏览器或其他应用中启动本应用. 注册自定义 ...

  9. 支付宝问题LaunchServices: ERROR: There is no registered handler for URL scheme alipay

    LaunchServices: ERROR: There is no registered handler for URL scheme alipay (这句话其实是在告诉你 设备上没有安装 支付宝的 ...

最新文章

  1. 第24讲 | 比特币专题(一)历史与货币
  2. 女性程序员占比超17%,平均月薪近2万 | 程序员就业大数据报告
  3. ifconfig,netstat 命令找不到解決办法
  4. Product mass creation tool
  5. 女生做一个“程序猿”,真有那么不现实吗?正在学编程的女孩子注意了!
  6. C#LeetCode刷题-字符串
  7. mysql 使用service mysqld start 提示未识别服务 进入/etc/rc.d/init.d 下面未发现有mysqld解决方法
  8. pve 虚拟环境 vi/vim不能右键粘贴设置方法
  9. jnid中mysql的驱动类_JDBC与JNDI的区别
  10. spss之数据预处理
  11. 为什么有的chm会显示“已取消到该网页的导航”?
  12. 基于灰度投影法的图片偏移测量
  13. 【docker】docker容器端口如何暴漏出来?
  14. 神操作 用 Python 操作 xmind 绘制思维导图
  15. 15000个常用的英语单词
  16. TiDB 在华泰证券的探索与实践
  17. 计算两个时间的时间差(C语言)
  18. 一个对小学生的随机生成的四则运算试题
  19. App引流推广:能够提高用户的转化的技术
  20. Oracle 状告 Google 侵犯专利

热门文章

  1. Linux非交互式修改用户密码
  2. oppo怎么广告接入_OPPO广告分模块投放的正确打开方式
  3. fwrite php utf8,坚持通过PHP的fwrite编写UTF-8文件
  4. 如何找到google主题的壁纸
  5. Leetcode_162_Find Peak Element
  6. Google Voice的简单介绍。(一点都不简单)
  7. 笔记本电脑维修90个精选实例
  8. MemSQL 的安装和简单使用 比Mysql快30倍的关系型数据库
  9. 电力 Web SCADA 工控组态编辑器
  10. 入侵检测技术综述(比较全)