Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 我可以生成包含URL和文本值的二维码吗?_Ios_Swift_Generator_Qr Code - Fatal编程技术网

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

Ios 我可以生成包含URL和文本值的二维码吗?,ios,swift,generator,qr-code,Ios,Swift,Generator,Qr Code,有人问过这个问题,但我不是问同样的问题。使用iOS Swift,我尝试在二维码中存储2个值。一个是商店中应用程序的URL。另一个是该应用程序可以提取的字符串(它有自己的扫描仪,带有获取字符串值的逻辑)。第二部分很好,因为我可以很容易地解析整个字符串。我试着在两个值之间加一个逗号,这几乎奏效,但当我使用普通扫描仪时,我收到一条“无法连接到应用商店”的消息。它获取URL并尝试连接,但额外的数据似乎把它搞砸了。如果我去掉逗号和字符串,URL就会工作 这是我的代码的一个子集 override func

有人问过这个问题,但我不是问同样的问题。使用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
}
override func viewDidLoad(){
super.viewDidLoad()
让有效载荷=”https://apps.apple.com/ca/app/.../,"
让image=generateQRCode(from:payload)
qrCodeImage.image=image
}
func generateQRCode(来自字符串:string)->UIImage?{
让data=string.data(使用:string.Encoding.ascii)
如果let filter=CIFilter(名称:“CIQRCodeGenerator”){
filter.setValue(数据,forKey:“inputMessage”)
let transform=CGAffineTransform(scaleX:3,y:3)
如果let output=filter.outputImage?.transformed(by:transform){
返回UIImage(ciImage:输出)
}
}
归零
}

有人知道这是否可能吗?e、 g.我可以使用json或vcard吗,或者通用扫描仪无法识别URL吗?

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

我不知道这是否可行,但如果不可行,我认为你可以在二维码的URL上添加你想要的数据作为查询参数,除非你附加到URL的数据存在隐私问题。AdamPro13,将其作为答案发布。它工作得很好!!但愿我自己能想到:)