Комплект разработчика (SDК) для SberMobile
SDK (Software Development Kit) для SberMobile - комплект разработчика с открытым кодом доступа, который позволяет расширять Платформу SberMobile, а также интегрировать ее с другими производственными системами. SDK SberMobile - это набор широкодоступных модулей, которые обеспечивают совместимость с разными операционными системами. Модули реализованы на языке Java. Существует две различных версии Java SDK для SberMobile:
Java SDK SberMobile для стандартной версии Java
Java SDK SberMobile для Android (Dalvik JVM)
SDK SberMobile включает в себя следующие компоненты:
Прикладной программный интерфейс (API) SberMobile Server для управления SberMobile Server и аппаратным оборудованием из других приложений через безопасное сетевое соединение.
Программный комплект разработчика драйверов (DDK) SberMobile Server для подсоединения новых аппаратных устройств к системе при помощи пользовательских Драйверов Устройства
Плагин SDK SberMobile Server для расширения SberMobile Server через обработку новых данных и презентацию модулей.
Agent SDK для внедрения Агентов, запускаемых на контроллерах, которые базируются на ПК.
Драйвер и Агент Нас часто спрашивают, в чем разница между драйвером устройства и Agent на базе Java. Приведем краткое объяснение:
|
Дистрибутивный пакет SDK для SberMobile
SDK для SberMobile доступен в виде архивированного файла в формате ZIP. который содержит:
Исходный код (папка
/src
)Примеры (папка
/demo-api
)Тесты элементов (папка
/test
)Функциональные тесты (папка
/test
)Javadocs (папка
/docs
)Предварительно созданный архив Java (JAR) с классами SDK (
aggregate-api.jar
)Необходимые сторонние библиотеки (
aggregate-api-libs.jar
)
Быстрый старт с SberMobile SDK
Как начать программно взаимодействовать с экземплярами сервера SberMobile.
Загрузка и настройка среды
Скачайте и распакуйте zip-архив с дистрибутивом SDK. SDK SberMobile доступен по тем же каналам распространения, что и сервер SberMobile..
Убедитесь, что Java Development Kit (JDK) установлен и доступен через переменную окружения
PATH
илиJAVA_HOME
на машине, на которой будут работать решения, созданные с помощью SDK.Настройте работающий экземпляр сервера SberMobile. По умолчанию все примеры настроены на взаимодействие с сервером на
localhost:8080
с использованием учетных данных логин:admin
и пароль:admin
. В последнем примере ниже объясняется, как изменить эту конфигурацию для доступа к удаленным серверам с другими учетными данными.
Список примеров
Перейдите в каталог, куда был извлечен SDK, и запустите бинарник gradlew с аргументом
:demo-api:tasks
.Для Unix-подобных систем:
./gradlew :demo-api:tasks
Для Windows:
gradlew.bat :demo-api:tasks
В выводе должны быть указаны доступные примеры:
Playground tasks
----------------
ExecuteAction
GetServerVersion
ManageDevices
ManageUsers
Запуск примеров задач
Задачи можно запускать с помощью бинарного файла gradlew и аргумента
:demo-api:<task name>
. Чтобы запустить примерGetServerVersion
, выполните следующие действия:Для Unix-подобных систем:
./gradlew :demo-api:GetServerVersion
Windows:
gradlew.bat :demo-api:GetServerVersion
В результате должно получиться что-то похожее на следующее:
> Task :demo-api:GetServerVersion
15:51:34,979 INFO ag.test Server version: 6.31.00
Дальнейшая разработка
Чтобы посмотреть, как устроены задачи, и поэкспериментировать с их редактированием, откройте любой из файлов
demo-api/src/main/java/examples/api/<task name>.java
в текстовом редакторе или IDE.Любые изменения в файле можно проверить, сохранив файл и запустив задачу с помощью бинарного файла
gradlew
.Например, обновив следующую строку в любой из задач, можно изменить адрес сервера и учетные данные подключения, чтобы подключиться к удаленному серверу или подключиться под другим пользователем.
// Provide correct server address/port and name/password of server user to log in as
RemoteServer rls = new RemoteServer("localhost", RemoteServer.DEFAULT_PORT, "admin", "admin");
Приведенные примеры демонстрируют различные варианты взаимодействия с сервером SberMobile и могут быть полезны при разработке решений для пользовательских случаев.
Использование SDK в Java приложениях
Чтобы использовать SberMobile SDK в приложении, необходимо добавить следующие java-архивы (JAR) в classpath вашего Java-приложения:
aggregate-api.jar
aggregate-api-libs.jar
Первый архив содержит специфичный для SberMobile код, в то время как второй архив содержит сторонние библиотеки, используемые SDK.
Дополнительная информация для Javadocs и исходных кодов
Для получения подробной информации о конкретных классах и интерфейсах, включенных в SDK, обратитесь к:
Javadocs расположенные в папке
/docs
дистрибутивного пакета SDKИсходный код, расположенный в папке
/src
дистрибутивного пакета SDK
Версия Java
Большинство дистрибутивов SberMobile Server и SberMobile IIoT Platform Client включают встроенную виртуальную машину Java. Любая виртуальная машина Java, установленная на ОС, не используется по умолчанию. Поэтому любые пользовательские модули должны быть скомпилированы для версии Java, которая используется сервером/клиентом. Эту версию можно найти в системных требованиях (требования сервера, требования клиента).