Очень простая программа для проверки подлинности штрих-кода.

Мы так часто сегодня покупаем всевозможные товары, что иной раз обращаем внимание только на срок годности (и то если это пищевой продукт:)).

Однако на всех вещах существует множество других меток. Это и всевозможные ГОСТы и номера товаров, и… штрих-коды. После развала Советского Союза все бывшие социалистические страны для того, чтобы показать свою «продвинутость» стали в срочном порядке перенимать у Запада все, что можно. Так в нашей стране на всем, чем можно вдруг появились эти непонятные полосатые метки.

Несмотря на то, что штриховые коды появились у нас только в конце 80-х — начале 90-х, придуманы они были в Америке еще в 50-х годах прошлого века. На сегодняшний день наиболее распространенной системой штрих-кодов является EAN-13.

Такой код состоит из 13 цифр (отсюда номер в названии кодировки) и ряда вертикальных полос разной ширины. Полосы расшифровываются только при помощи сканеров, а вот цифры мы можем проверить и сами.

Условно ряд цифр кода EAN-13 можно разбить на несколько частей: первые три цифры — код страны; следующие 4–6 цифр — регистрационный номер предприятия-производителя; следующие 3–5 цифр — код товара и последняя цифра — контрольное число.

Зная все это, можно легко проверить соответствие номера на штрих-коде заявленным на упаковке данным о производителе. А для того, чтобы не таскать с собой список кодов всех стран, достаточно использовать одну простую программуBarCow .

Человек, создавший эту программу, видимо руководствовался принципом: «Все гениальное — просто». В этой программе Вы не найдете никаких настроек и меню. Более того, программу не надо устанавливать. Достаточно распаковать архив (а то и этого можно не делать) и BarCow готова к использованию!

Интерфейс BarCow

Вас сначала может несколько удивить дизайн программы, так как ее окно имеет довольно нетрадиционный вид, но Вы быстро привыкнете:

Здесь всего три кнопки: «Exit» — выключает программу, «Ok» — запускает проверку кода, а «About» вызывает окно справки:

Как видно из справки, программа умеет работать не только со стандартной кодировкой EAN-13, но и с менее распространенными стандартами, поэтому поможет Вам расшифровать практически любой штрих-код.

Работа с программой

Для начала введите в поле в главном окне номер кода, который подлежит проверке, после чего нажмите «Ok». В нижней части окна отобразится результат, в котором будет присутствовать информация о статусе кода и, при его правильности, страна, которой он принадлежит:

И первый же проверенный код заставил меня насторожиться. Дело в том, что я проверил купленный довольно давно диск с игрой Diablo II, на котором было четко написано, что он произведен на Украине (а конкретно там была указана одна компания из г. Харьков). Но, как Вы могли видеть, код на «фирменной» наклейке оказался немецким:).

Решив проверить ради интереса остальные диски, я наткнулся в своей коллекции на еще один уникальный экземпляр:). На этот раз им оказался караоке-диск с популярными когда-то песнями. Но если предыдущий код хотя бы существовал в природе (пусть и теоретически:)), то кто произвел сей видеодиск — загадка. Код оказался на 100% поддельным:

Выводы

Что тут еще сказать? Граждане, будьте бдительны:). Хорошо, если поддельный товар окажется работоспособным. А если это будет какая-то «заморская» еда, то можно легко и в больницу с отравлением загреметь. Поэтому, если есть подозрение на то, что Вам подсунули «липу» — скачайте нехитрую программку BarCow и проверьте номер штрих-кода покупки чтобы развеять (или подтвердить) свои опасения.

P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Руслана Тертышного.

P.P.S. Сегодня компьютер помогает анализировать не только штрих-коды, но даже психологическое воздействие того или иного текста на человека! Не верите? Тогда скачайте вот эту программу:

Большинство современных (и даже не самых современных) смартфонов умеют читать как QR- (в том числе и с автоматическим распознаванием URL сайтов), так и обычные шрих-коды с зашифрованными данными о продуктах.

Благодаря такой опции практически каждый мобильный юзер сегодня может не только быстро прочитать краткое описание того или иного товара, но и оперативно сравнить, к примеру, его стоимость с ценами других продавцов и познакомиться с отзывами о продукте тех покупателей, которые уже успели купить его раньше.

Все что для этого требуется это сам мобильный девайс (планшет, смартфон, плеер, в общем, об этом детальнее — на stylus.com.ua), желательно с качественной камерой, и хорошее мобильное приложение для сканирования и чтения QR- и штрих-кодов.

Плюс некоторое умение правильно обращаться с эти весьма полезным в наше время мобильным софтом.

Приложений таких сегодня наделали уже более, чем достаточно, распространяются они как правило бесплатно, и скачать их можно где угодно. Однако ввиду чрезвычайно широкого ассортимента таких программ выбрать ту, которая работать будет быстро и качественно, оказалось делом не таким уж и простым. Тем не менее, найти можно, точнее их уже нашли.

Вот о них и расскажем чуть подробнее. Итак

Как читать QR-коды с помощью Android-смартфона (или планшета)

ШАГ 1
Заходим на Google Play и скачиваем бесплатное приложение QR Code Reader . Размер файла примерно 3MB в зависимости от модели смартфона.

ШАГ 2
Устанавливаем и открываем программу. Далее просто наводим объектив основной камеры смартфона на любой QR-код (либо просто открываем через этот ридер готовую фотографию с кодом), все остальное приложение сделает само.

Важный нюанс : QR Code Reader автоматически меняет браузер, потому если вы хотите использовать тот браузер, к которому вы привыкли и который уже установленный на вашем смартфоне, то в настройках приложения надо только убрать галочку в соответствующем чек-боксе.

Как читать штрих-коды с помощью Android-смартфона (или планшета)

Предположим вам нужно отсканировать шрих-код на упаковке товара в супермаркете, чтобы получить более подробную информацию об этом продукте и/или сравнить указанную цену с предложениями других магазинов. Для этого требуется:

ШАГ 1
Качаем (тоже бесплатно и тоже с Google Play) приложение ShopSavvy . Размер его меньше 1 мегабайта

ШАГ 2
Программка попросит вас зарегистрироваться на сайте ShopSavvy. Однако эта процедура не является обязательной. Потому можем потратить пару минут на создание эккаунта, а можем обойтись без этого. Работаем приложение тоже просто. Открываем, жмем кнопку сканера в правом верхнем углу экрана, наводим камеру смартфона на штрих-код и потом читаем полученную информацию.

В этом уроке научимся создавать приложение для чтения штрих-кодов и QR-кодов с использованием стандартной библиотеки Mobile Vision API.

Еще с выпуском Google Play services версии 7.8 разработчики добавили интерфейсы Mobile Vision, которые обеспечивают API для обнаружения штрих-кода. Они считывают и декодируют множество различных типов штрих-кодов, быстро, легко и локально.

Классы для обнаружения и анализа штрих-кодов доступны в пространстве имен com.google.android.gms.vision.barcode. Основной рабочей лошадкой является класс BarcodeDetector . Он выполняет обработку объектов Frame и возвращает массив штрих-кодов SparseArray .

Тип Barcode представляет собой единый общепризнанный штрих-код и его значение. В случае 1D штрих-кодов, таких как коды UPC , это будет просто номер, который закодирован в штрих-коде. Его значение доступно в поле rawValue, в то время как тип штрих-кода (то есть его кодировку) можно найти в поле format.

Для 2D штрих-кодов, которые содержат структурированные данные, такие как QR-коды — в поле valueFormat устанавливается определенный тип значения, соответствующего полю данных. Так, например, если обнаружен тип URL , то поле valueFormat вернет константу URL, а объект Barcode.UrlBookmark будет содержать значение URL-адреса. Помимо URL-адресов, существует множество различных типов данных, которые QR-код может хранить. Например, почтовый адрес, дату и время события календаря, мероприятие в календаре, информацию контакта, номер телефона, местоположение на карте и другие данные, полный список которых приводится в документации. Ссылки на документацию .

Использование в приложении Mobile Vision API позволяет считывать штрих-коды в любом положении.

Важно отметить, что синтаксический разбор всех штрих-кодов выполняется локально, поэтому вам не нужно использовать соединение с сервером для чтения данных из кода. Например, при считывании линейного штрих-кода PDF-417 , который может вместить до 1 КБ текста, можно сразу же получить всю закодированную в нем информацию.

Итак, для разработки приложения нам понадобится:

  • Среда разработки Android Studio
  • Смартфон на Android 4.2.2 или более поздней версии
  • Последняя версия Android SDK, включая компонент SDK tools. Вы можете получить его с помощью Android SDK Manager в Android Studio.
  • Google Play Services SDK. Вы можете получить его также в Android SDK Manager в Android Studio.

Создаем новый проект в Android Studio. При создании выбираем шаблон Empty Activity.

На следующем шаге нужно убедиться, что ваше приложение может использовать службы Google Play, в состав которых входит Mobile Vision API. Для этого нужно обновить файл build.gradle вашего проекта.

В секции зависимостей должны быть такие строки. Обновите Gradle при необходимости.

Compile "com.android.support:appcompat-v7:25.0.0" compile "com.google.android.gms:play-services:9.8.0"

Службы Google Play часто обновляются, и чтобы получить последнюю версию, в Android Studio выберите инструменты > Android > SDK Manager.

Затем найдите строчку для сервисов Google Play и убедитесь, что у вас установлена версия 26 и выше. Если нет — установите компонент.

Теперь создадим пользовательский интерфейс.

В Android Studio выберите папку «res» и откройте ее вложенную папку «layout». Здесь вы увидите «activity_main.xml». Откройте его в редакторе макетов.

Вы можете видеть, что ваш макет содержит текстовое поле . Нужно изменить макет, как показано ниже. Теперь здесь будет кроме текстового поля также кнопка и изображение. Для всех экранных компонентов прописываем идентификаторы, чтобы потом обращаться к ним в коде.

Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png