С недавнего времени перестал работать сборщик мобильных приложений. При сборке выдает следующую ошибку:
> Task :processReleaseManifest
C:\MobileSDK\temp\mab-58bc0ba4-1f1f-47e9-8b02-fe2a8e9a27aa\AndroidManifest.xml:3:2-34:16 Warning:
application@android:label was tagged at AndroidManifest.xml:3 to replace other declarations but no other declaration present
> Task :processReleaseResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':processReleaseResources'.
> Android resource linking failed
C:\MobileSDK\temp\mab-58bc0ba4-1f1f-47e9-8b02-fe2a8e9a27aa\build\intermediates\merged_manifests\release\AndroidManifest.xml:177: AAPT: error: unexpected element <uses-sdk> found in <manifest><application>.
Параметры сборщика следующие:
[info] Android ARM (Gradle)
[info] Дата и время начала сборки: 22.05.2019 9:16:25
[info] Версия ОС : Windows x86, Microsoft Windows 7 version 6.1 Service Pack 1 (Build 7601)
[info] Версия 1С:Предприятия : 8.3.13.1513 Windows x86
[info] Версия сборщика : 2.0.9.49
[info] Версия мобильной платформы: 8.3.14.53
[info] Тип сборки : app
[info] Графическая информация :
[info] Аудиоинформация :
[info] Путь к Android SDK : C:\MobileSDK\SDK_studio
[info] Android API Level : 28
[info] Путь к Java : C:\Program Files\Java\jdk-12.0.1
[info] Рабочий каталог (и кеш) : C:\MobileSDK\temp
Последняя успешная сборка приложения была 26.03.19
Переустановка компонентов JDK и SDK не помогла.
В чем может быть ошибка? Что смотреть, в какую сторону копать?
Решение следующее. Во внешних компонентах мобильной конфигурации 1С есть "ScancodeBarcodeScannerCPT", внутри него прописан <uses-sdk> который устанавливается в Manifest.Application. Выгружаем внешнюю компоненту, открываем XML файл, удаляем <uses-sdk android:minSdkVersion="10"/>, запаковываем компоненту и загружаем в конфигурацию.
(2) Это был долгий путь. По сути решение элементарное - обновить конфу мобильного приложения. Ну или по крайней мере обновить все внешние компоненты, что я и сделал в результате. Я не догадался, мне техподдержка 1С подсказала что нужно сделать. Странно только что они сразу обновить конфу не предложили.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший