h1. Инструкция по запуску сервиса Android

+Для работы обязательно требуется установленный .NET Framework версии 4.0 и выше.+

Для запуска сервиса также требуется установленная Java.

h2. Скачивание сервиса

1. Запросить архив AndroidServ в "отделе технической поддержки":mailto:notify@cwms3000.ru?subject=Требуется%20архив%20AndroidServ&body=Пришлите,%20пожалуйста,%20архив%20AndroidServ%20 (или скачать его из прикрепленных файлов - mcisNEW.zip (.jar может изменяться по мере обновления сервиса!))

2. Извлечь файлы из архива в рабочий каталог, например:

<pre>
C:\mcis2
</pre>

В каталоге должны находиться следующие файлы:
* @data@ — папка, необходимая для запуска сервиса (прикреплена как data.zip и содержится в архиве mcisNEW.zip);
* @WinSW.NET4.exe@ — исполняемый файл для запуска службы Windows;
* @WinSW.NET4.xml@ — конфигурационный файл службы Windows;
* @run.cmd@ — файл для запуска сервиса в консольном режиме;
* @20251110_01_metrics_mcis-mobile-service.jar@ — jar-файл сервиса (может отличаться по версии, но суть работы и настройки не меняются).

h2. Основные параметры запуска

В параметрах запуска необходимо указать:

* @--spring.datasource.url@ — строка подключения к БД Oracle;
* @--spring.datasource.username@ — логин пользователя БД;
* @--spring.datasource.password@ — пароль пользователя БД;
* @--spring.datasource.hikari.maximum-pool-size@ — максимальное количество соединений в пуле;
* @--server.port@ — порт, на котором будет запущен сервис;
* @--app.session.timeout@ — время жизни сессии, указывается в миллисекундах;
* @--app.session.exit@ — время завершения сессии, указывается в миллисекундах.

Пример строки подключения к БД:

<pre>
jdbc:oracle:thin:@//000.000.000.000:1521/INSTANCE_NAME
</pre>

Где:

* @000.000.000.000@ — IP-адрес сервера БД;
* @1521@ — порт Oracle;
* @INSTANCE_NAME@ — имя инстанса / сервиса БД.

h2. Запуск в режиме приложения

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

1. Открыть на редактирование файл @run.cmd@.

!run_in_dir.png!

!run_cmd.png!

2. Указать путь к каталогу, где находится jar-файл сервиса, и параметры запуска.

Пример файла @run.cmd@:

<pre><code class="dos">
cd /d C:\mcis2

java -jar 20251110_01_metrics_mcis-mobile-service.jar ^
--spring.datasource.url=jdbc:oracle:thin:@000.000.000.009:1521/TST ^
--spring.datasource.username=TST ^
--spring.datasource.password=pass ^
--spring.datasource.hikari.connection-timeout=2700000 ^
--server.port=10082 ^
--app.session.exit=3000000 ^
--app.session.timeout=1800000 ^
--app.session.max-sessions=25 ^
--fileName.settings=file:./data/settings.json ^
--fileName.apk=file:./data/app-debug.apk ^
--fileName.qr=file:./data/settingsQr.png
</code></pre>

Где необходимо заменить:

* @C:\mcis2@ — путь до каталога с сервисом;
* @000.000.000.000@ — IP-адрес сервера БД;
* @INSTANCE_NAME@ — имя инстанса / сервиса БД;
* @DB_USER@ — логин пользователя БД;
* @DB_PASSWORD@ — пароль пользователя БД;
* @10082@ — порт запуска сервиса;
* @1800000@ — время жизни сессии в миллисекундах.

3. Запустить @run.cmd@ от имени администратора.

После успешного запуска сервис начнет работу в консольном режиме. Обратите внимание, что при успешном запуске сервиса через консоль должно быть сообщение " Started Application in x.xxx seconds (JVM running for x.xxx)"

!started_in_cmd.jpg!

h2. Создание службы Windows

Для запуска сервиса в режиме службы Windows используется файл @WinSW.NET4.exe@.

+Важно:+ файл @WinSW.NET4.xml@ должен находиться в одном каталоге с @WinSW.NET4.exe@.

h3. Настройка конфигурации службы

1. Открыть на редактирование файл @WinSW.NET4.xml@.

!xml_config_example.png!

2. Указать параметры службы и параметры запуска сервиса.

Пример файла @WinSW.NET4.xml@:

<pre><code class="xml">
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<configuration>
    <id>CWMS3000AndroidServ</id>
    <name>CWMS3000AndroidServ (powered by WinSW)</name>
    <description>run android service for TSD</description>
    <executable>java</executable>
    <arguments>-jar 20251110_01_metrics_mcis-mobile-service.jar ^
--spring.datasource.url=jdbc:oracle:thin:@// ^
--spring.datasource.username=_ ^
--spring.datasource.password=_ ^
--spring.datasource.hikari.maximum-pool-size=20 ^
--server.port=10082 ^
--app.session.timeout=3600000 ^
--app.session.exit=3000000
</arguments>
</configuration>
</code></pre>

Описание параметров:

* @<id>CWMS3000AndroidServ</id>@ — уникальный ID службы;
* @<name>CWMS3000AndroidServ (powered by WinSW)</name>@ — отображаемое имя службы;
* @<description>run android service for TSD</description>@ — описание службы;
* @<executable>java</executable>@ — приложение, через которое запускается сервис;
* @<arguments>...</arguments>@ — параметры запуска jar-файла сервиса.

В строке @<arguments>@ необходимо заменить:

* @000.000.000.000@  IP-адрес сервера БД;
* @INSTANCE_NAME@  имя инстанса / сервиса БД;
* @DB_USER@  логин пользователя БД;
* @DB_PASSWORD@  пароль пользователя БД;
* @20@  максимальное количество соединений в пуле;
* @10082@  порт запуска сервиса;
* @3600000@  время жизни сессии в миллисекундах;
* @3000000@  код завершения сессии.

h3. Установка службы через WinSW

Убедиться, что файлы @WinSW.NET4.exe@ и @WinSW.NET4.xml@ находятся в одном каталоге, например:

<pre> C:\mcis2 </pre>

+Важно:+ имя конфигурационного файла должно соответствовать имени исполняемого файла WinSW.
Для файла @WinSW.NET4.exe@ конфигурационный файл должен называться @WinSW.NET4.xml@.

Открыть командную строку от имени администратора.
Перейти в каталог с сервисом:

<pre><code class="dos"> cd /d C:\mcis2 </code></pre>

Выполнить установку службы:

<pre><code class="dos"> WinSW.NET4.exe install </code></pre>

После выполнения команды WinSW создаст службу Windows на основании параметров, указанных в файле @WinSW.NET4.xml@.

Запустить службу:
WinSW.NET4.exe start [путь до WinSW.NET4.xml] --no-elevate

<pre><code class="dos"> WinSW.NET4.exe start WinSW.NET4.xml --no-elevate</code></pre>

Запустить, чтобы увидеть, запущен ли ваш сервис. WinSW.NET4.exe status [путь до WinSW.NET4.xml]

<pre><code class="dos"> WinSW.NET4.exe status WinSW.NET4.xml</code></pre>

Если служба установлена и запущена успешно, в списке служб Windows появится служба с именем, указанным в параметре @<name>@ файла @WinSW.NET4.xml@.

h3. Настройка учетной записи службы

1. Открыть список служб Windows.

!10.jpg!

2. Найти созданную службу:

<pre>
CWMS3000AndroidServ
</pre>

!11.jpg!

3. Открыть свойства службы.

4. Перейти на вкладку *Вход в систему*.

!12.jpg!

5. Указать учетную запись с правами администратора.

!13.jpg!

6. Сохранить изменения.

h3. Запуск службы

После настройки учетной записи запустить службу.

Если служба запущена успешно, Android-сервис работает в фоновом режиме.