我可以生成一个包含URL和文本值的二维码吗



有人问过这个问题,但我问的不是同一个问题。使用iOS Swift,我尝试在二维码中存储2个值。一个是商店中某个应用程序的URL。另一个是可以被该应用程序提取的字符串(它有自己的扫描仪,带有获取字符串值的逻辑(。第二部分工作得很好,因为我可以很容易地解析整个字符串。我试着在值之间加一个逗号,这几乎奏效了,但当我使用通用扫描仪时,我会收到一条"无法连接到应用商店"的消息。它获取URL并尝试连接,但额外的数据似乎把它搞砸了。如果我去掉逗号和字符串,URL就会起作用。

这是我的代码的子集。。。

override func viewDidLoad() {
super.viewDidLoad()
let payload = "https://apps.apple.com/ca/app/.../,<my string value>"
let image = generateQRCode(from: payload)
qrCodeImage.image = image
}

func generateQRCode(from string: String) -> UIImage? {
let data = string.data(using: String.Encoding.ascii)
if let filter = CIFilter(name: "CIQRCodeGenerator") {
filter.setValue(data, forKey: "inputMessage")
let transform = CGAffineTransform(scaleX: 3, y: 3)
if let output = filter.outputImage?.transformed(by: transform) {
return UIImage(ciImage: output)
}
}
return nil
}

有人知道这是否可能吗?例如,我可以使用json或vcard吗?或者通用扫描仪无法提取URL吗?

您可以在二维码的URL上添加您想要的数据作为查询参数,除非您添加到URL的数据存在隐私问题。

最新更新