2013-12-12 74 views
4

我正在將一個JSON片段存儲到類型31的二維碼上,以便我可以用智能手機掃描它並解析JSON。在QR碼中存儲壓縮的字母數字字符串

我遇到一些挑戰..

A型31 QR碼是「最密集的」(由於缺乏更好的話)的代碼,我可以讓我的Android設備可靠地進行掃描。這可以存儲2677個包含7%糾錯的字母數字字符。

我的壓縮優化/縮小的JSON對象並使用它編碼QR碼的選項有哪些?可以想象,我可以存儲多少數據?或者我甚至會吠叫正確的樹?

回答

4

這一切都取決於,真的。

  1. 是否提供Wi-Fi?如果是這樣,請將您的JSON片段放在Web服務器上,並將其URL編碼爲QR碼。問題解決了。

  2. 如果這是一般消費,那麼你需要知道一些手機比其他手機更好。礦井真的努力掃描version 25 QR code。我認爲比20版更高的東西不可靠。

  3. 使用字母數字模式幾乎沒有什麼好處。它只存儲大寫字母,數字0-9和一些標點符號。每個字符爲5½位(每對11位),其存儲容量與相應的二進制模式(每個字符8位)幾乎相同。

  4. 在快速測試中gzip -n -9將545字節的JSON文件縮減爲219個字節(原始大小的40%)。如果您以緊湊的二進制格式而不是詳細標記的格式存儲數據,則可以做得比這更好。

  5. 如果您要公開這些QR碼,則需要包含某種身份驗證機制(例如,32位校驗和)以防止惡意代碼注入和其他欺詐行爲。