Offentligt testkorpus

Vores scannerkompatibilitetspåstande er kun så gode som de beviser, de er bygget på. Denne side er korpuset, de input, vi regressionstester vores encoder-familier mod, plus telefonkamerabehavioren du kan kontrollere selv uden at tage vores ord for det.

Hvorfor dette eksisterer: de fleste QR-værktøjer publicerer en kompatibilitetsmatrix. Vi publicerer korpuset bag matricen. Hvis du er ansvarlig for en skannervlåde, detailhandel, lager, farma, luftfart, DMV, kan du køre dette korpus gennem dine egne læsere og verificere enhver påstand, vi fremsætter.

Download corpus.zip Samlet fixtures-JSON + CSV + metodologi + README. ~4 KB.

Indlæser version…

Sådan bruges korpuset

Download fixtures.

Alle testvektorer befinder sig i /test-vectors/fixtures.json. Et JSON-objekt pr. type med inputfelter og forventede afkodede delstreng(e). Hentes live fra dette websted, ingen forældede kopier.

Regenerer QR-koderne.

Tag en fixtures fields-map, sæt værdierne i generatoren for den type, og klik på Generer. Den resulterende QR er bit-for-bit identisk med det, vores CI kører round-trip mod.

Scan med din egen flåde.

Ret et iPhone-kamera, Android-kamera, Google Lens, industriel scanner (Zebra, Honeywell, Datalogic) eller app-specifik læser (en bankapp, en autentifikator) mod den genererede QR. Bekræft, at den afkodede tekst indeholder enhver expect-delstreng for den fixture.

Rapporter uoverensstemmelser.

Hvis en scanner i din flåde returnerer en afkodning, der ikke matcher fixturens, indgiv et issue. Vi reproducerer, tilføjer din scanner til den offentlige kompatibilitetsmatrix og (hvis det er en encoderfejl) leverer en rettelse.

Forventede scanningresultater

Gengivet fra det samme datasæt som kompatibilitetsmatricen og hver typesides "Scanner på"-linje, så de tre ikke kan modsige hinanden. Den fulde fixture-fil på /test-vectors/ har 33 poster, én per encoder-familie vi regressionstester; det er ikke én række per produkttype, og det påstår vi ikke, at den er.

TypeFixture-inputiPhone CameraAndroid CameraPro-scanner
URLhttps://example.com/testÅbner linkA1Åbner linkA5AfkoderA8
WiFiWIFI:S:MyNet;T:WPA;P:...;;Tilslutter til netværkA1Tilslutter til netværkA5Afkoder payloadA8
WiFi Enterprise (EAP)WPA2-EAP PEAP identity=alice@corpiOS 17+, rapporteretUAfkoder; tilslutning afhænger af OEM'enUAfkoder payloadQ
vCardFN=Alice ORG=Acme ...Tilføj til KontakterA1Tilføj til KontakterA5Afkoder payloadA8
TOTPotpauth://totp/...?secret=JBSW...Autentifikationsapp læser denA9, A10Autentifikationsapp læser denA9, A10Afkoder URIA8
eSIMLPA:1$rsp.example.com$K2-LM...iOS 17.4+ klargørA4Android 13+ klargørUAfkoder URIQ
Bitcoin (BIP-21)bitcoin:1A1zP1eP...Wallet-app åbnesQWallet-app åbnesQAfkoder URIQ
SEPA (EPC)BCD header + name + IBAN + amountKun rå strengQKun rå strengQAfkoder rå strengQ
Swiss QR-billSPC header + IBAN + address + amountKun rå strengQKun rå strengQAfkoder rå strengQ
Micro QRCompact payloadIngen afkodningV, UIngen afkodningGIndustrielle læsereZ
rMQRRectangular payloadIngen afkodningUIngen afkodningGNyere Zebra-, Scandit- og Cognex-firmwareZ
GS1 Digital Linkhttps://id.gs1.org/01/09506000134352Åbner URLQÅbner URLQPOS-firmware parser AI'erneQ
AztecArbitrary payloadIngen afkodningA2Google Lens, nogle varianterA7NativeA8
Data MatrixArbitrary payloadIngen afkodningA2Google LensA6NativeA8
PDF417AAMVA or arbitraryIngen afkodningA2Google Lens, ujævntA7NativeA8
AAMVA driver license@\n\x1e\rANSI 636014100002DL...iOS 17+ kørkortsbevidst flowA3Kun kørkortsbevidste appsUNativeA8
EAN-13 / UPC-A0012345678905Ingen afkodningApGoogle LensGEnhver butiks-POSA8
Code 128ABC-123Ingen afkodningApGoogle LensGNativeA8

Sådan læses markeringerne

Dokumentation

Hvad "forventet scanningresultat" betyder

Metodologiske noter

Scanner-flåde-attesteringslog

Hver manuel enhedskørsel, dateret. Rækker tilføjes, når vi anskaffer hardware, eller en bruger rapporterer en uoverensstemmelse; et resultat ændres aldrig i stilhed, det får en ny række.

#DeviceOS / appCorpus sliceResultDateNotes
A1iPhone 15 ProiOS 18.3, native CameraAll QR fixturespass2026-04-10
A2iPhone 15 ProiOS 18.3, native CameraAztec, PDF417, Data Matrixfail2026-04-10Ingen afkoder nativt (forventet, se /standards/non-qr-2d/)
A3iPhone 15 ProiOS 18.3, native CameraAAMVA PDF417partial2026-04-10iOS 17+ kørkortsbevidst flow tilbyder Tilføj til Wallet; rå PDF417 returneres ikke
A4iPhone 15 ProiOS 18.3, WalleteSIM LPApass2026-04-12Tilføj-eSIM-flowet udløses korrekt
A5Pixel 8Android 14, native CameraAll QR fixturespass2026-04-10
A6Pixel 8Android 14, Google LensData Matrixpass2026-04-10
A7Pixel 8Android 14, Google LensAztec, PDF417partial2026-04-10Nogle varianter afkoder; understøttelsen er ujævn
A8Zebra DS8100firmware CAAACS00-002-R06All 2D + 1D fixturespass2026-04-11Industriel imager, kanonisk reference
A9Google Authenticatorv7.0+ (iOS/Android)TOTP, HOTPpass2026-04-12Kun SHA-1, 6 cifre (ignorerer algorithm/digits-parametre iht. Googles de facto-profil)
A101Passwordv8 (iOS/Android/macOS)TOTP, HOTPpass2026-04-12Fuld RFC-understøttelse inkl. SHA-256, SHA-512, 8 cifre

Hvad der kommer

Se også

Korpus sidst regressionstestet 2026-04-18. Verificerede scannerenheder: iPhone 15 Pro / iOS 18.3, Pixel 8 / Android 14, Zebra DS8100.