Ios 存折中二进制条码的编码

Ios 存折中二进制条码的编码,ios,iphone,passbook,Ios,Iphone,Passbook,我必须将Passbook与提供PDF417条形码的网站整合,该条形码的数据以二进制编码(与文本相反),例如: 有没有办法将这个二进制块编码到pass.json中,以便Passbook在iPhone上以与原始图片相同的方式显示它 同样,我无法切换到基于文本的条形码,因为我不拥有数据。仅为澄清,所附图片包含一个PDF417条形码,解码后,该条形码包含不可打印的字符,例如空字符,这就是我将其称为二进制的原因 更新 这是图像解码为字节数组的方式: 01 00 01 00 02 00 E7 C4 B5

我必须将Passbook与提供PDF417条形码的网站整合,该条形码的数据以二进制编码(与文本相反),例如:

有没有办法将这个二进制块编码到pass.json中,以便Passbook在iPhone上以与原始图片相同的方式显示它

同样,我无法切换到基于文本的条形码,因为我不拥有数据。仅为澄清,所附图片包含一个PDF417条形码,解码后,该条形码包含不可打印的字符,例如空字符,这就是我将其称为二进制的原因

更新

这是图像解码为字节数组的方式:

01 00 01 00 02 00 E7 C4 B5 96 B8 42 94 B3 B4 75 
1A D1 F2 38 92 EA B5 0E 17 5D 0B 2A AA 64 18 CC 
28 62 86 E5 74 5D A3 89 09 12 6E D5 7A 1A C9 EE 
BF 23 9C E1 60 AD 9E DE 92 6D E5 79 99 C7 91 F1 
6A D5 82 2E B6 E3 81 24 F8 0A F8 E6 44 5D 56 D2 
00 00 00 00 00 00 40 0D 00 09 20 23 00 96 13 5C 
10 EC 0C EA A3 E8 A3 20 30 4B 2A 20 7D 0F BB DF 
F7 5E FA 1E 76 F7 40 20 10 08 04 02 81 40 20 30 
A3 D5 6C 1A 04 76 14 10
以下是我尝试将其转换为utf-8字符串的方式:


但是,存折不显示等效的条形码。事实上,它只显示前几个字节。

我认为您不想解码图像的二进制数据,而是希望像扫描一样从条形码读取数据

您可以使用这样的服务,它会像扫描条形码一样为您提供条形码的值

将“原始文本”值发送到pass.json

我没有使用过这项服务,但在快速阅读后,我假设它出现在下面的“消息”中:

"barcode" : {
    "message" : "ABCD 123 EFGH 456 IJKL 789 MNOP",
    "format" : "PKBarcodeFormatPDF417",
    "messageEncoding" : "iso-8859-1"
}

ref:

即使您不拥有数据,您是否可以访问二进制编码格式?您应该能够解码数据并将其作为文本传递给存折。@Johan Karlsson:我可以解码密码。因此,我得到了一个二进制字节数组,它的开头包含零。问题是,我不知道如何将这个字节数组传递给pass.json。@PassKit:假设所附图片上的条形码解密为:0x00、0x01、0x00、0x02(这是四个字节的示例)。如何填充需要字符串的JSON字段:
{“message”:“这里是什么?”}
这将取决于编码-您只需使用所选编码对字节流进行编码。您目前如何生成和签署您的通行证?也许我可以提供一些代码来演示。有人删除了我的答案,所以…我想他们不认为这是一个答案?你是在真正的iPhone上试用过,还是把它放到sim卡上了?您的转义字符串在实际的iPhone上为我显示正确的条形码,在Mac上被截断。这是一个bug,但不应该太重要。但是,正确的是,附加的图像不会解码为人类可读的字符串。相反,它看起来更像一个包含空字符和其他特殊字符的二进制块。这些字节无法很好地粘贴到
“message”
字段的值中。PDF417使用基本929编码。尝试将返回的数据从base 929转换为64或其他与消息格式相关的内容。裁判:
"barcode" : {
    "message" : "ABCD 123 EFGH 456 IJKL 789 MNOP",
    "format" : "PKBarcodeFormatPDF417",
    "messageEncoding" : "iso-8859-1"
}