Похожие презентации:
Zebra
1. Краткое описание устройства, на котором специализируется работа приложения
Краткое описание устройства, на которомспециализируется работа приложения
Мобильное компьютерное устройство "ZEBRA", которое применяется:
- в розничной торговле: для сканирования товаров, управления запасами, обработки заказов,
приема платежей и т.д;
- на складах и в логистике: для сбора данных, отслеживания грузов, инвентаризации, управления
складом и т.д;
- в сервисных компаниях: для обслуживания клиентов, сбора данных о работе, управления
заданиями и т.д;
- в здравоохранении: для сбора данных о пациентах, управления медицинскими записями,
выписывания рецептов и т.д;
- в сфере услуг: для мобильной работы, сбора данных, управления заказами, связи с клиентами и
т.д.
2.
Входная точка в приложениеMainActivity
Перед началом работы со сканнером, нужно добавить нашу
программу в специальное фирменное приложение "DataWedge",
именно через него наше приложение сможет коммуницировать с
данными сканера.
Со сканнером можно общаться несколькими способами:
BroadcastReceiver и Activity.NewIntent, я выбрал второй вариант.
На рисунке справа представлена обработка intent, где
decodedData – просканированный код в текстовом виде, и
labelType – тип штрихкода, например Imei, SerialNumber, EAN и
тд.
Например: data – 350123451234560, type – Code128
3.
Обработка данных со сканераMainViewModel – ViewModel MainActivity
В этом классе происходит первичная обработка данных.
CurrentDestination содержит ссылку на текущий экран.
Для чего это нужно:
В приложении есть места, где штрихкоды сканируются для
добавления в списки, а также для удаления из них.
Для этого был создан интерфейс BarcodePurpose.
При наблюдении за штрихкодами проверяю их тип, если это
ActionDelete – штрихкод нужно удалить из списка, если это
SimpleScan – добавить. Решение так себе, не было времени сделать
лучше.
4. Типы, обрабатываемые приложением
Где EAN и UPC обобщенные штрихкоды.Identifier – интерфейс маркер, а значит, что штрихкод является идентификатором устройства.
MobileDeviceAuthData – интерфейс маркер. Предполагалось, что нужны пометки таких идентификаторов как
SerialNumber и IMEI.
Но в процессе выяснилось, что не все устройства с Serial Number подходят под определение
"мобильного".
В некоторых случаях приложение отфильтровывает штрихкоды, имплементирующие интерфейс Identifier.
Например есть экран, который ждет сканирования только IMEI и SerialNumber, этот экран проверяет
устройства с данными штрихкодами на подлинность в специальном сервисе через Интернет.
5. Создание оберток для штрихкодов
Создание оберток для штрихкодовBarcodeDataFactory – создает объекты, имлементирующие интерфейс BarcodeData.
Реализация ясна по представленному коду.
6. Обертки для идентификаторов устройств
Обертки для идентификаторов устройствIdentifierFactory – создает объекты, имлементирующие интерфейс Identifier.
Существует два индентификатора в приложении – SN и Imei.
Разница между ними в следующем: Imei состоит полностью из цифр, SN содержит буквы.
Поэтому реализация простая, пробуем кастить текстовое представление штрихкода в Long, если успешно, то мы
работаем с Imei, в противном случае с SN.
7.
Наблюдение за сканером с точки зрения приложенияBarcodeScannerManager – интерфейс для работы приложения со
штрихкодами. Позволяет работать со сканером в любом месте приложения.
В целом простая и понятная реализация на мой взгляд. Поэтому
презентация короткая :)