Как создать драйвер для андроид

Содержание
  1. Обзор средств запуска и отладки приложений на Android
  2. Русские Блоги
  3. Разработка интерфейса драйвера Android для принтера Zebra и случай вызова
  4. Каталог статей
  5. Разработка интерфейса драйвера принтера Zebra для Android и звонок
  6. Исходный код GitHub
  7. Шаги развития
  8. Конфигурация среды
  9. Загрузка ресурса Zebra SDK
  10. Настройка среды разработки Android
  11. Новый проект Android
  12. Новая библиотека Android
  13. Импортировать пакет драйверов Zebra
  14. Конфигурация разрешений библиотеки Android
  15. Онлайн-тест по грамматике ZPL II
  16. Развитие основной функции
  17. Пакет arr файл
  18. Интерфейс вызова arr
  19. Дополнительно: приложение упаковано в файл APK
  20. Интеллектуальная рекомендация
  21. Используйте шаблон состояния вместо if else
  22. Проектирование архитектуры: схема проектирования уровня балансировки нагрузки (5) — установка одного узла LVS
  23. Рыба образования, средняя школа закончила в учебном класс, как найти первую работу.
  24. Синглтон паттерн в питоне
  25. Java Counce Collection
  26. Вам также может понравиться
  27. динамический прокси-сервер jdk (Proxy, InvocationHandler), включая исходный код $ Proxy0
  28. Юля: Об изменениях в Array 1.0
  29. студия Android генерирует статическую библиотеку jni
  30. Nginx 502 раствор
  31. Java вызывает SMS-интерфейс WebService

Обзор средств запуска и отладки приложений на Android

Разрабатывая свое первое приложение под Android, я столкнулся с проблемой запуска приложения для проверки и отладки. Эта статья должна помочь начинающему пользователю выбрать средство эмуляции.

Содержание:
Android Virtual Device (AVD)

Установка:
Это средство эмуляции встроено в Android SDK.

Настройка:
(на примере использования в Eclipse)
Window > Android SDK and AVD Manager > New
Вписываем имя виртуального устройства, платформу, размер карты памяти, тип дисплея…
Жмем Create AVD.

Запуск:
Первый запуск эмулятор длиться очень долго, особенно на слабых устройствах. Например, я так и не смог дождаться первого запуска на своем нетбуке, а, запуская первый раз на компьютере, был уверен, что эмулятор ушел в вечный цикл.
Последующие запуски эмулятора будут чуть шутрее.
Время между нажатием кнопки «Run» и появлением главного активити тестового приложения на эмуляторе проходит в среднем 11 секунд. Замеры проводил на достаточно производительном компьютере.

Преимущества и недостатки:
+ возможность протестировать приложение на разных версиях ОС Android, на устройствах с разными типами дисплея…
+ различные настройки, необходимые для тестирования, например, смена ориентации экрана
+ эмуляция SD-карты
— большой промежуток времени между нажатием кнопки «Run» и запуском приложения на эмуляторе
— эмулятор работает очень медленно, например, то, что телефон обрабатывал 1-2 секунды, эмулятор делал за 8-10 секунд

VirtualBox+Android x86

Установка и настройка:

  1. Скачиваем и устанавливаем VirtualBox.
  2. Скачиваем образ.
  3. «Создаём виртуальную машину Linux 2.6/Other Linux, 512 Mb RAM, Bridged Network, HD 2 Gb, Disable Mouse Integration. Подключаем ISO файл и загружаемся одной из опций LiveCD (есть вариант HDPI и MDPI)» (с) или следуем этой инструкции.
  4. Нажимаем Alt-F1 для выхода в консоль и набираем netcfg и запоминаем IP адрес эмулятора. Для возврата к GUI, нажимаем Alt-F7.
  5. adb connect

Запуск:
Время между нажатием кнопки «Run» и появлением главного активити тестового приложения на эмуляторе не засекал, но, по субъективным ощущениям, это происходит почти мгновенно.

Преимущества и недостатки:
+ маленький промежуток времени между нажатием кнопки «Run» и запуском приложения на эмуляторе
+ местами шустрая работа
— достаточно длительная и иногда проблематичная установка
— эмулятор работает местами медленно, имеются проблемы с изображением (особенно на MDPI)
— проблемы с эмуляцией SD-карты, сменой ориентацию экрана,…
— только два (три) доступные версии ОС Android и только два доступных типа дисплея

Телефон с ОС Android, подключенный через USB

Установка и настройка:

  1. Включаем на телефоне режим отладки. (Насторйки > Приложения > Разработка > Отладка по USB).
  2. Скачиваем драйвер для вашего телефона.
  3. Подключаем телефон к ПК.
  4. Устанавливаем драйвера. В Диспетчере устройств должен появиться раздел ADB Interface.
  5. adb devices. Если ваш телефон не отображается в списке, то переустанавливаем драйвер ADB.
Читайте также:  Андроид реклама ads by

Запуск:
Между нажатием кнопки «Run» и появлением главного активити тестового приложения на телефоне проходит порядка 5 секунд.

Преимущества и недостатки:
+ возможность увидеть приложение так, как его будет видеть пользователь (очень важным момент, особенно при создании интерфейса и дизайна приложения)
+ мультитач (если есть в телефоне)
+ смена ориентации экрана, акселерометр (если есть в телефоне)
— только одна версия ОС и один тип дисплея
— на физическом рабочем столе появиться еще один объект

Выводы:

Я пробовал работать с каждым из этих средств эмуляции и остановился на таком варианте:
1. написание и тестирование приложения, используя телефон;
2. тестирование приложения на многочисленных Android Virtual Device с различными комбинациями версии ОС и типа дисплея.
Надеюсь, что читающий сделал выбор эмулятора или почерпнул для себя что-то новое.
Удачи в тестировании!

Источник

Русские Блоги

Разработка интерфейса драйвера Android для принтера Zebra и случай вызова

Каталог статей

Разработка интерфейса драйвера принтера Zebra для Android и звонок

Драйвер устройства Android Мобильный принтер Zebra ZQ520 для печати штрих-кода

Исходный код GitHub

Шаги развития

Конфигурация среды

  • Аппаратная среда
    • Мобильный принтер Zebra ZQ520 1
    • Устройство Android 1
    • Бумага для печати (50мм * 40мм)
  • Программная среда
    • Android Studio 3.2
      • gradle:3.2.0

Загрузка ресурса Zebra SDK

способ 1:Официальный сайт скачать(Требуется различная регистрационная информация)

Поскольку я являюсь системой Windows, щелкните Установщик Windows. После завершения загрузки дважды щелкните, чтобы установить в системе Windows. После завершения установки каталог: \ link_os_sdk Каталог \ android \ v2.14.5198 \ lib Требуемый пакет jar находится в папке.

Способ 2:Загрузка ресурса CSDN(Потребуется небольшое количество баллов)

Способ 3:Baidu SkyDrive Скачать(Ссылка: https://pan.baidu.com/s/1tVg6lW52SSeh3j6kW7ih8Q, код извлечения: qfc8)

Настройка среды разработки Android

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

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

Другие коллеги несут ответственность за разработку клиента Android и вызов предоставленного мной интерфейса.

Таким образом, в данном случае принята модель развития:

  • Разработайте библиотеку Android и упакуйте ее в файл arr;
  • Создайте пустое приложение App и вызовите упакованный тест интерфейса arr.
  • После успешного выполнения теста отправьте тестовый пример и интерфейс arr вызывающей стороне для использования.

Новый проект Android

Введите имя проекта, имя пакета и выберите каталог проекта.

Выберите поддерживаемую дисковую среду. Выберите телефон, минимум Android 4.0

Создайте пустой шаблон, чтобы облегчить последующее тестирование.

Название действия и название макета, по умолчанию ОК, нажмите Готово

После того, как новое создание будет завершено, Gradle автоматически синхронизируется. В это время вам нужно держать сеть открытой (это займет некоторое время, просто терпеливо подождите. Если сети нет, вам необходимо убедиться, что автономная версия gradle поддерживает )

Если вы столкнулись со следующими ошибками:

Unable to resolve dependency for ‘:[email protected]/compileClasspath’: Could not find any version that matches com.android.support:appcompat-v7:29.+.
Open File
Show Details

Это связано с тем, что не найден файл, который соответствует обычной проверке: com.android.support:appcompat-v7:29.+. Version

Простое насилие: ослабьте обычные правила проверки пакета.

  • Щелкните гиперссылку «Открыть файл» в сообщении об ошибке, чтобы открыть соответствующий файл Gradle сборки;
  • Найдите строку com.android.support:appcompat-v7:29.+;
  • Удалить 29. Несколько символов, сохранить
  • Нажмите «попробовать agine» выше или «Файл -> Синхронизировать проект с файлами Gradle», чтобы повторно синхронизировать файлы Gradle.
Читайте также:  Which android archos 5

На этом этапе создается пустой проект Android.

Новая библиотека Android

  • Щелкните правой кнопкой мыши файл проекта или Файл -> новый модуль
  • Выберите библиотеку Android
  • Введите имя библиотеки, выберите минимальную версию SDK (рекомендуется, чтобы она была такой же, как у проекта Android) и нажмите «Готово».

Если вы столкнулись со следующими ошибками:

Unable to resolve dependency for ‘:[email protected]/compileClasspath’: Could not find any version that matches com.android.support:appcompat-v7:29.+.
Open File
Show Details

Решение такое же, как указано выше (обратите внимание, что у библиотеки есть собственный соответствующий файл build.gradle, рекомендуется щелкнуть гиперссылку открытого файла в сообщении об ошибке, чтобы перейти)

Импортировать пакет драйверов Zebra

  • Щелкните раздел Android в обзоре ресурсов в верхнем левом углу, чтобы переключиться в режим отображения проекта.
  • Импортируйте файл драйвера Zebra в каталог libs модуля Android Library (пакет jar, загруженный на первом этапе).
  • Выберите все пакеты jar, щелкните правой кнопкой мыши, Добавить как библиотеку, выберите добавить в модуль в качестве недавно созданной библиотеки Android.

После успешного добавления следующий фрагмент кода будет автоматически сгенерирован в файле build.gradle, соответствующем библиотеке Android:

Если вы не нашли опцию «Добавить как библиотеку» на предыдущем шаге, вы также можете вручную добавить приведенный выше код в соответствующий файл build.gradle (обратите внимание на путь)

Конфигурация разрешений библиотеки Android

Поскольку в этом случае используется соединение BlueTooth, необходимо настроить разрешения доступа Bluetooth, предоставленные BlueTooth.

Разверните файл src -> main -> AndroidMainfest.xml последовательно под модулем библиотеки Android (zebraprinter). Добавьте следующие две строки кода:

Если вам нужны другие требования, вы можете продолжить настройку разрешений здесь (например, вам может потребоваться получить MAC-адрес хоста позже, поэтому я добавлю разрешения WIFI_STATE)

Онлайн-тест по грамматике ZPL II

Порекомендуйте веб-сайт для онлайн-тестирования ZPL II.Нажмите, чтобы прыгать

Здесь вы можете написать код ZPL онлайн и нажать кнопку перерисовки, чтобы просмотреть результат в любое время, что очень удобно!

Развитие основной функции

Основное требование в этом случае: получить один фрагмент информации, разделить информацию и распечатать два фрагмента информации.

Базовая структура кода библиотеки Android выглядит следующим образом:


где:

  • В пакете Entity хранятся две сущности:
    • ResultObj: возвращаемый класс информационного объекта. Содержит логический тип состояния выполнения и строковый тип информации о выполнении.
    • ZeroSymbolBill: хранит полученную информацию и разбивается на дела. Для облегчения работы.
  • Класс инструмента хранится в пакете Utils:
    • Утилиты: Инструменты. Содержит статический метод для создания уникального кода GUID.
  • Код, связанный с принтером, хранится в пакете ZebraPrinter .
    • Принтер ZQ520: хранит основной код вызова принтера ZQ520.

Конкретный код выглядит следующим образом:

Пакет arr файл

Файл arr и файл jar можно понимать как файл библиотеки классов. Разница в том, что файл arr содержит файлы ресурсов class и res, а файл jar содержит только файлы классов.

Что касается подробных сходств и различий между двумя документами, пожалуйста, ознакомьтесь с информацией самостоятельно, в этой статье они не будут представлены подробно.

В опции «gradle» в правом углу интерфейса кода Android Studio выберите каталог Android Library, который вы начали создавать, и разверните: Задачи -> сборка -> сборка. Дважды щелкните, чтобы выполнить.

Упакуйте файл arr. (Вывод находится в каталоге / build / output / arr)

Среди них файл zebraprinter-release.aar представляет собой упакованную версию выпуска ( Я обнаружил, что в названии модуля я по ошибке написал зебру как зебру )

Интерфейс вызова arr

Выше были завершены разработка и упаковка интерфейса arr, по логике вещей нужно запаковать и отправить разработчикам клиента Android только файл arr.

Однако давайте сначала проверим это сами.

Читайте также:  Logmein hamachi для андроид

Скопируйте файл arr в каталог libs модуля приложения проекта (пустой шаблон приложения Android, созданный в начале) и переименуйте его (не забудьте переключиться на отображение проекта, иначе пакет libs не будет отображаться).

Измените файл конфигурации build.gradle (если вы не измените его, Android Studio также предложит вам изменить его при использовании, и рекомендуется изменить его вручную)
В блоке кода зависимостей в файле build.gradle модуля приложения добавьте следующий код:

В файле дизайна интерфейса activity_main.xml модуля приложения добавьте кнопку для тестирования.

Добавьте событие отслеживания щелчка для кнопки printtest в файле MainActivity модуля приложения и вызовите метод zeroSymbolBill в интерфейсе arr для отправки команды печати.

На данный момент разработка и тестирование кода завершены.

Дополнительно: приложение упаковано в файл APK

Выберите модуль приложения, выберите Сборка -> Создать подписанный пакет / APK.

Выберите тип упаковки.

При выборе пакета Android APP Bundle будут созданы файлы в формате aab;

При выборе APK будет создан файл в формате apk;

Настроить информацию о сертификате разработки приложения

Руководство по созданию сертификата для разработки под Android: справочная статья

Выберите каталог, в котором наконец создается файл apk

Упаковано успешно


После завершения упаковки скопируйте в клиент Android для установки и тестирования.

Интеллектуальная рекомендация

Используйте шаблон состояния вместо if else

Большинство разработчиков все еще используютif elseСтруктура процесса, виделиjdonизbanqСтатья написана Большим Братом, используяcommand,aopЗамена шаблонаif elseСтруктура процесса. Я не совсем понял эт.

Проектирование архитектуры: схема проектирования уровня балансировки нагрузки (5) — установка одного узла LVS

1 Обзор Предыдущая статья «Проектирование архитектуры: проектирование уровня балансировки нагрузки (4) — Принципы LVS» (http://blog.csdn.net/yinwenjie/article/details/46845997), мы предста.

Рыба образования, средняя школа закончила в учебном класс, как найти первую работу.

Self-брат Я девять ноль, теперь занимается разработкой веб-конца Java. Некоторое понимание и восприятие учебных курсов. Учебное заведение является ямой, дорога, что вы уже прошли, только вы знаете, дл.

Синглтон паттерн в питоне

Дизайн шаблона Шаблон дизайна — это краткое изложение предыдущей работы, которое, как правило, широко распространено людьми и является зрелым решением конкретной проблемы. Он предназначен для многораз.

Java Counce Collection

TRUEEWAP основан на реализации красных навигаций. Это отображение отсортировано в соответствии с его природооформленным порядком или отсортировано в соответствии с компаратором, предусмотренным при со.

Вам также может понравиться

динамический прокси-сервер jdk (Proxy, InvocationHandler), включая исходный код $ Proxy0

1. Связанные классы и методы: java.lang.reflect.Proxy, Прокси предоставляет статические методы для создания динамических прокси-классов и экземпляров. newProxyInstance() Возвращает экземпляр прокси-кл.

Юля: Об изменениях в Array 1.0

Версии до 1.0, например 0.2-0.6, Но теперь 1.0 это сообщит об ошибке. Это использование претерпело серьезные изменения! такие как: Это можно считать серьезным изменением.

студия Android генерирует статическую библиотеку jni

Android Сяобай, который только что вошел в общество, описывает, как использовать студию Android для создания статической библиотеки jni. 1. Подготовка: Сначала установите ndk, сначала сами Baidu, позж.

Nginx 502 раствор

Общие решения Nginx 502 Bad Gateway следующие: Nginx 502 Ошибка 1: Количество сайтов велико, а количество PHP-CGI мало. Для этой 502 ошибки просто увеличивайте количество процессов PHP-CGI. В частност.

Java вызывает SMS-интерфейс WebService

1. Описание интерфейса WebService Отправьте в виде http-сообщения, выше — информация о запросе, а ниже — возвращаемое значение. Представлен раздел возвращаемого значения документа интерфейса. 2. Код J.

Источник

Оцените статью