利用URI方案最大限度地利用QR码

最近,每个人都在谈论的潜力二维码.它已经成为互联网上的传统条形码(就像你在最喜欢的零售店里看到的实体商品上的条形码一样)。人们可以用他们的智能手机快速拍摄QR码,并立即建立和加载一个网站,所以我们可以在纸张和实体商品上打印QR码,如名片、杂志广告和海报,以引导人们访问我们的网站。

但是,通常情况下,web开发人员并没有充分发挥QR码的潜力。在本文中,我们将讨论一种通过URI方案释放QR码全部潜力的技术。

二维码如何简单工作

让我们来了解一下二维码机制是如何工作的。

二维码的核心是一种特殊生成的图像,其工作原理类似条形码。某些命令(称为反应),当二维码被摄像头(通常是智能手机或平板电脑上的摄像头)捕捉到时,二维码的图像就会被处理,然后内置的响应就会进行。一种常见的二维码响应是在捕捉二维码的设备上的网络浏览器中打开某个网站。

二维码与上图相似,包含的信息可以被摄像头捕捉,并被智能手机、平板电脑或电脑解读。

二维码的读者

这就是事情变得有趣的地方。qr码阅读器——扫描代码并执行操作的应用程序——在功能方面并不相同。有些可以识别QR码,做各种神奇的事情,还有一些可以简单地打开url或显示文本。大多数智能手机都有相同的基本功能(地址簿、日历、短信功能、提醒和互联网浏览),而一个好的qr码阅读器可以满足所有这些功能。

然而,在低功能的应用程序中,url打开可能是我们期望大多数qr代码阅读器所具有的唯一可靠的功能。以下是qr码阅读器通常配备的功能列表:

  • 显示文本
  • 设置系统警报
  • 向日历添加事件
  • 在浏览器中打开url
  • 收集联系方式(包括电子名片
  • 发送电子邮件
  • 发送短讯(SMS)
  • 地理位置
  • 拨打其他电话
  • 连接WiFi

思想:使用URI方案

由于浏览器已经可以启动默认的电子邮件客户端通过简单mailtoURL(浏览器多年来一直支持这样的URI方案),同样的技术是否可以用于为其他具有非原生URI方案的产品提供应用内功能,而QR阅读器默认不支持这些功能?答案是肯定的!

如果应用程序支持该方案,并且用户安装了QR所代表的应用程序,那么它将工作得很好——使用哪个QR码阅读器都无关紧要。

的可能性

下面是一些很酷的事情:

  • 推出原生苹果应用(邮件、电话、FaceTime、短信、地图、YouTube和iTunes)
  • 运行JavaScript bookmarklet
  • 打开特定的IM客户端(Skype, AIM, MSN, GTalk, ICQ和雅虎)
  • 开启特殊应用程序(IRC工具、提要阅读器、FTP客户端和SVN存储库)
  • 打开任何注册URI方案的应用程序当它安装在一个平台上时

这项特殊技术的神奇之处在于,它不依赖于非常先进的qr码阅读器;它所需要的是应用程序创建者(无论是Skype, Evernote或愤怒的小鸟),你想启动和接口使用系统开发API来注册URI方案。在苹果的例子中,它是共享UIApplication对象的Cocoa Touch OpenURL方法,而对于其他平台(如Android),在文档中会有一个等效的地方。

从扫描器到浏览器到应用程序-可能性是无限的!下面是一些常见的非http URI方案:

应用程序 URI方案或协议 查询字符串
默认电子邮件应用程序 mailto: < >邮件?查询 主题
CC
BCC
身体
默认电话应用程序 电话:<数字> N/A
默认短信应用 短信:<数字> N/A
聊天室客户端 irc: / / < url >:查询 港口
通道
密码
联合提要阅读器 提要:< url > N/A
苹果的FaceTime facetime: <数字> N/A
Skype的客户 skype: <用户名> |数字?查询 添加
调用
闲谈,聊天
sendfile
用户信息
谷歌通话客户端 gtalk:查询?< >邮件 闲谈,聊天
调用
Windows Live Messenger客户端 msnim:查询?< >邮件 添加
闲谈,聊天
的声音
视频
雅虎信使号的客户 ymsgr:查询?<邮件|号码> sendim
加入朋友
sendfile
调用
callPhone
闲谈,聊天
即时通讯
customstatus
getimv
AOL即时通讯客户端 目的:查询?<用户名> goim
快走开
addbuddy

这对我们意味着什么?就目前情况而言,实际上有相当多的桌面应用程序(以及移动应用程序)已经使用了URI方案。

以Skype为例。你希望人们能够捕捉QR码,使他们的手机通过Skype打电话给你吗?这是可以做到的(至少在iOS上)。

它还可以用来运行一些本地应用程序,启动JavaScript bookmarklet(可能包括在浏览器中运行的应用程序),并访问通常的FTP和IRC协议(如果有关联的话)。下面是一些对开发者有用的链接:

现在你对QR码有了更多的了解,并对开始使用时需要知道的事情有了简要的概述,下面我将概述该技术的步骤。注意:我将在下面描述的技术甚至可以用于执行JavaScript代码,因此在错误的代码编写方法下,这可能会被利用。

步骤1:选择要执行的响应

首先,决定你想要QR码完成什么。显然,你可以使用常规的qr码生成器——比如向手机发送短信或发送电子邮件——但让我们尝试一些更棘手的东西。我们将创建一个Skype QR码,它将自动启动应用程序,并向Skype联系人拨打语音电话。

(这只适用于扫描二维码的用户安装了Skype)。

步骤2:使用URL缩短服务创建一个URL

许多qr代码生成器都有一个特殊的问题:如果您尝试将mailto或其他非http链接到他们,他们有时认为一个错误发生了(这也影响到一些阅读器应用程序)。当然,这不会让我们的Skype启动器接近于跨qr代码阅读器兼容,所以我们需要另一个解决方案-而且,幸运的是,一个常见的存在,可以帮助将这个URL进入浏览器(并帮助web开发人员监控点击统计)!

我们将使用url缩短服务。这些服务很少挑剔你插入的内容,它们会推送格式良好的url,并带有尽可能最佳兼容性所需的HTTP头(大多数QR阅读器知道如何打开基本的url)。url缩短服务,例如TinyURL将把这个非常规的URL变成一个普遍接受的URL。对于这个QR,我们将Skype联系人命名echo123-此联系人是Skype提供的免费语音质量测试联系人。对于我们的url缩短服务,我将使用TinyURL,但你可以使用其他许多网址缩短服务之一,如bitly的is.gd等等。

只需在缩短器中输入您选择的URI方案。这是我TinyURL链接转换的结果:

URL skype: echo123 ?调用

如果你点击上面的URL,你可能会看到如下内容(如果你在Windows上使用谷歌Chrome):

第三步:生成二维码

现在使用生成的URL -如果你安装了Windows或Mac的桌面版Skype,它就会工作-并从它生成一个工作的QR码。检查缩短后的URL在你的浏览器中是否有效;这个链接应该可以启动Skype。

当涉及到生成QR码的方法时,有大量的选择;免费工具在网络上随处可见。下面是几个免费的生成器:

生成二维码后,测试它。为你的移动设备下载一个可用的应用程序(如果你还没有的话),然后拍下你生成的二维码的快照。

以下是一些免费的移动平台qr阅读器产品:

应该发生什么,如果你正确地按照说明,如果你已经安装了Skype应用程序,是这样的:

  1. 你的二维码会被二维码阅读器识别出来
  2. QR阅读器应用程序将注意到QR码包含一个URL(因此它将跳过阅读器的兼容性怪癖)
  3. TinyURL链接将在默认浏览器中打开
  4. 它将重定向到Skype-call URI方案并启动Skype

对于一个聪明的图像来说,这是非常惊人的东西!对于您精彩的创作,剩下要做的唯一一件事就是将其上传到Web上(就像我下面完成的示例一样)。作为一种最佳实践,我建议您考虑提供一个链接到QR图像本身中被捕获的URL(对于桌面用户)。

除此之外,如果你觉得特别有创意,你可以用一点颜色或一些有限的艺术品来修饰你的二维码。

完成的二维码

上面的二维码会来电echo123如果你安装了Skype应用程序

结论

这种技术的力量在于它为设计人员和开发人员提供了机会。

在应用程序开发人员和支持它们的浏览器之间存在一个URI方案(幸运的是,这就是它们的全部!)使用简单的重定向(由您或第三方提供)和这些已经存在并得到良好支持的特性,您可以启动应用程序,通过查询代码进行交互,执行JavaScript和做各种奇妙的创造性事情。二维码正被越来越多的人采用,从未如此广泛地使用。

通过这个简单的技术,您可以突破大多数现有的限制。

相关内容

WebFX职业

加入我们的使命,为全球各地的企业提供行业领先的数字营销服务-同时建立您的个人知识和个人成长。

我们招聘!
查看30+职位空缺!