如何创建执行命令的二维码



我看到过一些例子,人们在二维码上编写这样的可执行代码https://itsmattkc.com/etc/snakeqr/.我想创建一个二维码来执行命令,为任何手机(安卓和IOS(打开特定的手机应用程序
的过程是这样的

  1. 用手机扫描二维码
  2. 手机执行存储在二维码(类似于C语言中的"启动C:\…\特定应用程序"的代码(内的命令,并打开应用程序,如果手机上没有安装应用程序,则提示用户下载
  3. 关闭用于执行命令的窗口(如果有(

我现在的问题是,

  1. 什么语言可以用来编码打开手机应用程序的命令,就像我上面所说的那样
  2. 如何将代码转换为二维码

背景二维码本身不执行任何操作,在高级二维码只是将字节数组序列化为可视化形式的一种方法,读取器可以将图像反序列化为字节数组,然后必须对其进行解译。

通用QR阅读器通常会假设原始数据代表一个编码字符串,因此会将字节解码为字符串。

SnakeQR中的说明告诉你使用一个二维码阅读器,它可以将字节保存到磁盘上,而不是将它们解码成字符串,这只是表明二维码包含二进制数据,数据本身没有任何作用,用户需要获取这些数据并完成下一步操作,但操作取决于用户。

这是魔法开始发生的时候,如果二维码代表或包含URL,那么大多数阅读器应用程序将自动启动web浏览器并导航到该URL。

在应用程序开发领域,我们可以劫持这些二维码阅读器的默认行为,以3种方式与设备交互:

  1. 编写一个网页,该网页将执行脚本以在导航到该页面的设备上完成操作,将其托管在全局可访问的位置,并将该页面的URL存储在您的二维码中。

  2. 使用设备将识别为内部位置的URI,这篇文章如何从QR阅读器启动我的android应用程序描述了这个过程,在android应用程序API中,你可以定义这些意图,有效地注册具有特定操作的URI。

    • 这方面的细节超出了范围,这个问题是关于QR码本身的,但大多数操作系统都有类似的过程,其中有绑定到URI的标准操作,并且通常有一种机制可以创建自定义绑定
  3. 编写您自己的专有二维码阅读器应用程序,该应用程序可以本机理解二维码中的命令,并可以直接执行。

就支持这一点的语言而言,这不是特定于语言的事情,在Android应用程序中,你想利用的机制是Android Intents教程(Android开发者-Intents(。

在iOS中,多年来一直存在URL绑定的混合版本,但SiriKit可能是功能上最接近的,它的限制远大于android,但足以启动应用程序并传递参数。

在Windows操作系统中,你可以注册URI方案来做同样的事情。。。

当涉及到专有逻辑时,我们可以使用所有3种方法为用户构建一种无障碍的体验:

  1. 制作一个带有类似"如果你看到这个页面,那么你应该安装我的应用程序以获得增强的体验">(在这个页面上应该有关于如何查找和安装应用程序的说明(
  2. 将二维码作为登录页的URL,并将您想要传递给应用程序的参数作为URL参数
  3. 构建和发布你的应用程序,在此应用程序中,你应该向本机设备操作系统注册登录页的URI,以便在安装设备后,你的应用会运行,而不是用户进入登录页。不要忘记将任何参数映射为应用程序的启动参数

相关内容

  • 没有找到相关文章

最新更新