Если стоит задача разработки мобильного приложения для сайта, можете воспользоваться данной заметкой. Постарался сделать ее более менее подробной, но при этом не сильно нудной.
Создание мобильного приложения на cordova, для любого сайта.
Михаил Базаров: 22.01.2020 11:52:40
Создание мобильного приложения на cordova, для любого сайта.
Если стоит задача разработки мобильного приложения для сайта, можете воспользоваться данной заметкой. Постарался сделать ее более менее подробной, но при этом не сильно нудной. |
Михаил Базаров: 20.06.2020 14:54:58
Если (скорее всего) в процессе импорта проекта в Android Studio получаете ошибку не совместимости с Gradle-7
Перейдите: в Файл -> Структура проекта И выберите Anrdoid Gradle Plugin Version = 3.1.4 Gradle Version = 6.0 Можете поиграться с версиями повыше, но с этими точно работает. Полный текст возможной ошибки
|
Julixs: 18.08.2020 22:27:26
Спасибо интересный материал, действительно ценник выставленный битриксами немного зашкаливает но как они объясняют это копейки по сравнению со стоимостью нативного приложения.
У меня возник только один вопрос, могу ли использовать для сборки приложения cordova или phone gap если для создания контента я использовал модуль МП битриксов, а так же их методы и классы BitrixMobile, не повлияет ли это на сборку? |
Михаил Базаров: 19.08.2020 11:00:13
Просто, попробуйте подключить его в Header.php и что-нибудь воспроизвести |
Михаил Базаров: 09.09.2020 23:11:00
Если, при сборке проекта на новой версии платформы ios (6.*.*) получаете ошибку сборки вида:
chmod +x /ПУТЬ_К_ПРОЕКТУ/platforms/ios/MeetingPoint/Scripts/copy-www-build-step.sh |
Михаил Базаров: 02.04.2021 10:40:01
Если используете плагины геолокации и камеры, для ios обязательно использовать описание- для чего используете эти данные.
Иначе приложение не пройдет проверку и будет отклонено. В config.xml добавляем
|
Александр: 28.10.2022 15:16:04
Добрый день, Михаил.
Очень полезны Ваши статьи и видео по bitrix и cordova. Огромное спасибо за проделанный труд. У меня вопрос, который не могу ни как решить. Может у Вас есть решение. По умолчанию все ссылки на скачивание файлов (например PDF) не работают. Т.е. файлы не скачиваются. Пробовал разные способы, но ни как не могу добиться казалось бы элементарного функционала. Приходилось ли решать подобную задачу? |
Михаил Базаров: 28.10.2022 19:30:54
Эсли правильно понял диллему, вам нужно использовать плагин cordova-plugin-file Вот тут документация https://cordova.apache.org/docs/en/11.x/reference/cordova-plugin-file/index.html |
Гость: 01.11.2022 17:08:51
Да, плагин такой есть. Его я пытался использовать, но безрезультатно.
Объясню более подробно, что я пытаюсь сделать. Если пользователь заходит на сайт где есть ссылка на скачивание файла, то при клике на эту ссылку начинается скачивание в папку download. Например тут - https://bazarow.ru/pricenew/ есть ссылка "скачать опросник DOC" С cordova так не получается. Даже при попытке открыть через cordova-plugin-inappbrowser ни чего не происходит. |
Гость: 10.01.2023 02:47:52
Большое спасибо за инструкции! Очень помогают.
А есть ли какой-то вариант сохранять авторизацию пользователя после закрытия приложения (как в браузере)? Сейчас пока приложение висит в фоне, все ок, но после его закрытия авторизация слетает. И вопрос с файлами еще. У меня файлы pdf открываются для просмотра в этом же окне, но т.к. нет кнопки назад, вернуться к сайту никак нельзя. Можно как-то решить эту проблему? |
Михаил Базаров: 10.01.2023 10:55:55
Авторизация работает так же как и на обычном сайте. Просто увеличьте время сессии пользователя до нужного значения.
PDF файлы, вместо открытия можно принудитьно скачивать, должно помочь
Или открывать их во фрейме, поверх контента, с кнопкой закрытия. |
Гость: 10.01.2023 22:09:12
Тестировал на реальных устройствах. Тут точно не во времени сессии дело, именно приложение не сохраняет сессию. Может подскажете куда здесь можно копать? |
Михаил Базаров: 10.01.2023 23:43:16
"Сайт" открываете плагином inappbrowser или просто, стартовая страница сайта и есть приложение? Если редирект на нужную страницу плагином, то сессии должны сохраняться- проверил сейчас на iphone. |
Евгений: 01.02.2023 18:06:19
Михаил, может подскажете как вы побороли открытие внешних ссылок сайта на ios?
Перепробовал разные способы. Указывал им target="_system", делал скрипты типа этого:
![]() |
Евгений: 01.02.2023 18:22:31
Ура, получилось, может кому понадобится:
|
Евгений: 01.02.2023 23:30:10
И все-таки без вашей помощи не обойтись..
![]() Когда отправляю приложение в AppStore, получаю ошибку на почту:
Как я понял, в последних версиях кордовы (платформы ios в ней) выпилен UIWebView и не нужно ставить плагин cordova-plugin-wkwebview-engine. Сейчас версия платформы iOS 6.2.0 и даже если ставить cordova-plugin-wkwebview-engine, оно пишет что плагин работает только с версией ниже 6.0.0:
Пробовал пройтись поиском по проекту. Все упоминания UIWebView идут в плагине cordova-plugin-remote-injection. А новых версий плагина нет и я так понял именно он не адаптирован и из-за него ошибки? Что делать? Как вы побеждаете это? ![]() |
Михаил Базаров: 01.02.2023 23:58:23
Вот тут скачайте, замените этот модуль в своем проекте, просто перезаписав в папке plugins
Удалите обе платформы и снова добавте, перезапишется и в них https://github.com/mibazarow/Cordova-Start-Project |
Евгений: 02.02.2023 12:56:19
С вашей помощью дошел-таки до последнего этапа и все обломали модераторы Эппл.
Отклонили приложение по пункту Guideline 4.2.2 - Design - Minimum Functionality
Как я почитал, "Guideline 4.2.2 - Design - Minimum Functionality"одна из самых распространенных причин отклонения, особенно для сайтов-приложений. У меня просто сайт компании с каталогом продукции и услуг на шаблоне для корпоративного сайта от известной компании на маркетплейсе ![]() Может у вас есть какой-то совет как пройти модерацию такому сайту? Добавить какой-то функционал или еще как-то? |
Михаил Базаров: 03.02.2023 11:45:47
Тут чую ни как).
Нужно придумывать какую-то полезную функциональность. Первое что в голову приходить, какой-нибудь калькулятор чего нибудь. Типа, калькулятор замера стоимости того, что продает компания, с сохранением где-то в кабинете |
Евгений: 03.02.2023 14:27:25
Эхх, ладно, буду пробовать уже потом тогда с этим сайтом. У нас есть еще интернет-магазин, буду пробовать его добавить в эпстор, он важнее. С интернет-магазинами все проще будет при модерации? Я так понял вы добавляете в основном магазины как раз, как они проходят модерацию?
|
Гость: 08.02.2023 12:40:09
Кто-нибудь знает, можно ли на сайте, запущенном в кордове узнать что он работает сейчас в ней? Через javascritt-хапрос какой-нибудь?
|
Михаил Базаров: 08.02.2023 13:46:35
Можно поставить плагин cordova-plugin-device
И воспользоваться
|
Марина: 06.04.2023 13:58:08
Здравствуйте, который день уже бьюсь над задачей, как получить разрешения на камеру? В консоли ошибка: cannot open camera "0" without camera permission. В манифесте и конфиге, вроде, все прописала, что в мануалах советуют, но, все бестолку! Подскажите, пожалуйста))
|
Михаил Базаров: 06.04.2023 15:06:43
Попробуйте так:
Запрос на камеру
В config.xml
|
Алексей: 25.09.2023 19:15:55
Здравствуйте. А для публикации в Play Market не нужен сертификат цифровой подписи? Как это ведется в cordova?
|
Михаил Базаров: 26.09.2023 09:53:21
При сборке в Android Studio его создаете, сохраняете куда-нибудь и подписываете aab перед выгрузкой в маркет.
Потом стараетесь не терять- восстанавливать очень тяжело. |
Гость: 01.09.2024 18:57:23
Приветствую !
Решил освоить для себя данное направление, по первому видео "#1 - Приложение на #Cordova - создание мобильного приложения для сайта" установил вроде все проги, наткнулся на такую штуку как "Android resource linking failed ERROR: C:\OSPanel\domains\cordova\ru.sem_courier.app\platforms\android\app\src\main\AndroidManifest.xml:4:9-9:20: AAPT: error: resource style/Theme.Material3.DayNight.NoActionBar (aka ru.sem_courier.app:style/Theme.Material3.DayNight.NoActionBar) not found." |
Михаил Базаров: 02.09.2024 13:26:45
Там можно подняться до самой первой ошибки и обычно выдает ссылку на документацию в которой ошибка подробно описана
|
Гость: 06.09.2024 12:21:05
Где бы его найти? Снес все и по новой решил все установить. Долго разбирался с Android Gradle Plugin version 8.3.0. в настройках была установлена версия 8.6.0 и т.к у меня приложение почему-то использует версию 8.3.0 он предлагал обновиться до 8.6.0, но все-равно что-то не давало ему это сделать, решил оставить 8.3.0 Но ошибка связанная с "Cannot resolve symbol '@style/Theme.Material3.DayNight.NoActionBar'" так и осталась висеть и победить мне его пока не удается. |
Гость: 06.11.2024 16:35:23
<!-- Иконка приложения 1024 на 1024, остальные создадутся из нее -->
<icon src="src/icomin.png" / Бред. Создалась только 1 иконка mipmap-mdpi, а остальные папки остались пустые под другие размеры |
Михаил Базаров: 07.11.2024 09:35:49
Проверил только что, да создались не все. Видимо Кордова не поспевает за требованиями вендров.
Но иконки можно создать в любом онлайн генераторе их сейчас много. |
Блог-note: заметки разработчика
Вывести свойство привязка к Яндекс Картам в Битрикс
Часто бывает нужно вывести свойство привязка к Яндекс карте в детальном описании элемента. Например в детальной новости ...
Как работает система сертификации партнеров 1С-Битрикс, уровни партнеров и специалистов
Сертификация от «1С-Битрикс» – это объективная оценка знаний и практических навыков разработки проектов на платформе от ...
Получить цены товаров с помощью D7-ORM в 1С-Битрикс
Веб-разработка часто требует работы с базой данных для получения и обработки информации о товарах, в том числе и их цен...
Помечаем новинки лейблом в каталоге битрикс
Достаточно часто, при разработке каталога товаров или интернет магазина на системе управления Битрикс, встает задача как...
Сгенерировать скидочные купоны, при заказе и отправить на почту
Задача: после того как пользователь сделал заказ, нужно сгенерировать одноразовые купоны для скидки (правила корзины) и ...
Получить и вывести все цены товара в 1С-Битрикс
Задача: получить и вывести все цены товара по его ID в каталоге 1С-Битрикс (например, в детальной карточке catalog.e...
Настройка прав доступа в 1С-Битрикс
Часто, в интернет-магазине под управлением 1С Битрикс, нужно создать группу пользователей со специфическими правами. Нап...
Заполнение множественного пользовательского свойства типа "строка" через API
Задача: когда пользователь заходит в мобильное приложение, нужно сохранить FCM токен устройства в пользовательское поле ...
Цвета из справочника Highload блоков в списке новостей
На сайте выводятся новости с помощью компонента news.list, при этом у новостей есть свойство "Цвета" типа &quo...