Для тех, кто не помнит или только присоединился к трансляции, о стиле изложения.
Картинки кликабельны.
Эпиграф параграфа (отличное сочетание слов) - он в несерьезной и сжатой форме отражает суть отрывка.
Лирическое отступление: выделенный курсивом текст, не влияющий на общую суть повествования.
Если вы давно хотели чем-то заняться, но вам не хватало времени,
то сейчас точно знаете, что дело было не во времени.
Самоизоляция, карантин, удаленная работа, указы Президента и еще много страшных слов это неплохая возможность узнать что-то новое, довести до ума старые проекты.
Например, попробовать Enterprise Development Tools в новой нумерации.
Небольшие лайфхаки из этой статьи помогут вам не угробить на это целый день.
Лирическое отступление: гуру в этом вопросе наверняка имеют, что сказать. А те, кто кодирует в нативной среде под Андроид, наверняка. Прошу в комментарии или пишите сами, тут никого не банят.
Enterprise Development Tools обладает более приятным интерфейсом отладки и синтаксического контроля модулей, вроде показа неиспользуемых переменных и т.п. чем не удивишь пишущих на JAVA например.
Попробовать ее стоит даже для общего развития.
Также советую прочесть документацию на ИТС, далее речь пойдет о чем в книжках не пишут. Поехали!
а где тут руль спросил гагарин
деревня буркнул королёв
ещё спроси а где тут вожжи
ещё поехали скажи
Лирическое отступление: На самом деле знаменитая фраза «Поехали!» принадлежит летчику-испытатель Марку Лазаревичу Галлаю. По уставу нужно было говорить «Экипаж, взлетаю!», но Галлай посчитал эту фразу слишком формальной. Так что команда «Поехали!» звучала на каждой тренировке, и Гагарин к ней привык. Не напрягайтесь, для меня День космонавтики очень почитаемый праздник, как и День подводника.
У меня ДР 12 апреля, хорошо хоть папа не уговорил маму назвать Юрием.
Такой вот получился космонавт-подводник, отцы командиры всю службу прикалывались).
Разработчики EDT рекомендуют для успешного запуска мобильного приложения установить Android Studio, Android SDK и виртуальное устройство Android. Плюс 5Гб в карму. И как увидим дальше еще и не взлетает. Когда из опыта работы с конфигуратором 1С понятно, что требуется лишь Android Debug Bridge.
- Эмулятор Андроид. При выходе каждого нового релиза Android Studio разработчики рассказывают как невероятно быстро стал запускаться эмулятор. Это правда, раньше он запускался как раз до выхода следующего релиза.
Но и сейчас лучше выбрать что-то попроще и постабильнее. Например NoxPlayer. Стартует за 30 сек из холодного старта, работает подо всем, не требователен к ресурсам и выглядит получше. - Android SDK это тот еще квест. Причем из одного окна выбора каталога. Ни установка SDK из командной строки, ни полная установка Android Studio к успеху не приводят. Пришлось запускать ProcessMonitor, чтобы понять какой собственно подкаталог нужен.
А нужен каталог ...sdk\tools. Его нет ни в одном варианте развертывания. Он называется ...sdk\emulator в типовом варианте.
Далее EDT в нем ищет файл emulator.exe. Причем особенно и не запускает, если находит adb сервер. Поэтому можно/нужно создать каталог sdk\tools скопировать туда файл notepad.exe в.\emulator.exe и все будет хорошо.
- adb сервер в Nox он свой, лежащий в каталоге C:\Program Files (x86)\Nox\bin и при работе с конфигуратором 1С, вполне достаточно указать этот каталог.
Но EDT же стартует от sdk\tools т.е. нужен каталог ...sdk\platform-tools где будут файлы adb.exe, AdbWinApi.dll и AdbWinUsbApi.dll
Но и символические ссылки никто не отменял (в данном случае ссылки жесткие, это не принципиально)
После этого EDT всем довольна.
- но это еще не победа, а участие. Потому что упс... EDT работает только с платформой 8.3.14. Тут у меня к разработчикам несколько вопросов.
Все последние настольные и мобильные конфигурации ждут 8.3.15 или 8.3.16
Но это уже так, на закуску. Переименовываем C:\Program Files (x86)\1cv8\8.3.16.1030 в C:\Program Files (x86)\1cv8\8.3.14.1030 и все стартует
А на эмулятор мобильную платформу нужно либо закинуть мышкой либо через конфигуратор
После этого наступает локальное счастье и можно разрабатывать, подключаться и отлаживать мобильное приложение в EDT.
Надеюсь, эта статья вам сэкономит пару часов времени, до выхода новых релизов конечно )
Дополнения касающиеся сборки мобильного приложения.
Аналогично, нет смысла разворачивать Android Studio, достаточно Android SDK command line, который занимает почти на порядок меньше места.
Допустим он установлен в каталог C:\android\sdk
Доустанавливаем пакеты из командной строки:
C:\android\sdk\tools\bin>sdkmanager.bat --sdk_root=C:\android\sdk platforms;android-29
C:\android\sdk\tools\bin>sdkmanager.bat --sdk_root=C:\android\sdk platform-tools
C:\android\sdk\tools\bin>sdkmanager.bat --list --sdk_root=C:\android\sdk
C:\android\sdk\tools\bin>sdkmanager.bat --sdk_root=C:\android\sdk build-tools;29.0.3
C:\android\sdk\tools\bin>sdkmanager.bat --list --sdk_root=C:\android\sdk
Нам покажет следующее, этого достаточно для сборки мобильного приложения 1С на мобильной платформе 1С версии 8.3.16.130
Path | Version | Description | Location
------- | ------- | ------- | -------
build-tools;28.0.3 | 28.0.3 | Android SDK Build-Tools 28.0.3 | build-tools\28.0.3\
build-tools;29.0.3 | 29.0.3 | Android SDK Build-Tools 29.0.3 | build-tools\29.0.3\
platform-tools | 29.0.6 | Android SDK Platform-Tools | platform-tools\
platforms;android-28 | 6 | Android SDK Platform 28 | platforms\android-28\
platforms;android-29 | 4 | Android SDK Platform 29 | platforms\android-29\
tools | 1.0.0 | Android SDK Tools 1 | tools\
Что значит словосочетание "(серия публикаций от чайника для чайников)"
То что возможно углубленное изучение предмета, выходящее за рамки данной публикации.
Однако данная статья гарантирует вам быстрый старт в предмет без дополнительного гугления с 99% точностью, при желании с вашей стороны и в пределах указанных релизов (как показывает опыт, +/- несколько месяцев, иногда гораздо дольше)
Публикация проверена на редакциях:
- Windows 10 версия 1909
- 1С:Предприятие 8.3 (8.3.14.1993, 8.3.16.1224)
- Мобильная платформа 1С (8.3.14.78, 8.3.16.130)
- 1C EDT (2020.2.0+350)
- Android Studio 3.6.2 for Windows 64-bit
- SDK packages commandlinetools-win-6200805_latest.zip
- Nox Player 6.5.0.5
Дополнения касающиеся тестирования мобильных покупок:
Есть публикация Встроенные покупки автор или не разобрался в вопросе, либо 1С поправили конфигурацию.
1С ники тоже в любом удобном случае меняют код конфигурации.
Для начала надо зафиксироваться и подумать логически - разработчики ведь наверняка пользуются этим функционалом.
Потом подумать как и покурить код.
И все встанет на место
И не нужно будет менять код метода UpdatePurchaseInformation
Если вы хотите проверить работу http сервиса прямо из браузера, то третьим параметром передается массив идентификаторов покупок, разделенных запятой
Тогда URL для тестирования будут выглядеть так
ОбновитьИнформациюОПокупках
http://192.168.211.131/PurchasesTest/hs/pt/UpdatePurchasingInformation?version=1&userIdentificator=t2&str=vehicle
Покупка
http://192.168.211.131/PurchasesTest/hs/pt/Purchase?version=1&userIdentificator=t2&productID=vehicle
ПолучитьКвитанцииВстроенныхПокупок
http://192.168.211.131/PurchasesTest/hs/pt/GetPurchasesReceipts?version=1&userIdentificator=t2&str=vehicle
Ответ сервиса http можно будет увидеть в окне браузера.
Мобильная платформа третий параметр отдает в в теле, но он есть, это легко проверить, наладив отладку.