Определение геокоординат в мобильной платформе с помощью внешней компоненты

21.11.22

Разработка - Разработка внешних компонент

Асинхронно, без использования сервисов Google.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Определение геокоординат в мобильной платформе с помощью внешней компоненты
.zip 1,05Mb
24 4 600 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

В мобильной платформе 1С определение местоположения работает через Google сервисы. Если Google сервисы на телефоне (планшете) недоступны, то определить геокоординаты средствами платформы не получится. В частности, такая проблема возникает на планшетах Huawei.

Предлагаем альтернативный способ определения геокоординат - с помощью внешней компоненты "GetLocation". Определение геокоординат происходит в фоновом режиме (чтобы не блокировать интерфейс), результат передаётся в 1С с помощью внешнего события:

ПодключитьВнешнююКомпоненту("ОбщийМакет.GetLocation","Z9846",ТипВнешнейКомпоненты.Native);
КомпонентаGetLocation = Новый("AddIn.Z9846.GetLocation");
КомпонентаGetLocation.GetLocation();

Процедура ВнешнееСобытие(Источник, Событие, Данные)
	Если Источник="GetLocation" Тогда
		Если Событие="LocationChanged" Тогда
			х = СтрНайти(Данные,"_");
			Если х=0 Тогда
				Возврат;
			КонецЕсли;
			
			А = Лев(Данные,х-1);
			Б = Сред(Данные,х+1);
			
			Широта = Число(А);
			Долгота = Число(Б);
		КонецЕсли;
	КонецЕсли;
КонецПроцедуры

 

Общие требования

Компонента предназначена для мобильной 1С на Android (arm, arm64, x86, x86_64).

 

Содержание файла

1. Внешняя компонента

2. Исходный код (проект Android Studio)

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Программист Пользователь 1С:Предприятие 8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Простой мобильный ТСД (терминал сбора данных) сканер для 1С для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически. Решение предназначено для считывания штрихкодов, а не для их создания и печати.

3050 руб.

22.04.2019    120684    723    205    

380

Мобильная разработка Сканер штрих-кода Терминал сбора данных 1С:Предприятие 8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Сбор заказов, инвентаризация, проверка ценников, просмотр полной информации об остатках и ценах со смартфона Онлайн - все это содержит в себе решение 1С "Штрихкод-информер" (штрих-код чекер). Отправка данных со смартфона выполняется либо напрямую в открытую форму документа, отсканировав QR-код, либо в общую корзину учетной системы, не подходя к компьютеру. Кассир или оператор сможет просмотреть список присланных данных и загрузить в любую форму, поддерживающую работу с ТСД. Для работы с мобильным приложением требуется опубликовать HTTP-сервис из поставляемого расширения.

3050 руб.

03.12.2018    70430    239    106    

187

Мобильная разработка 1С:Предприятие 8 1С:Управление торговлей 11 Оптовая торговля, дистрибуция, логистика Россия Платные (руб)

"МРМ:Маркировка" для работы с конфигурациями 1С - готовое решение, позволяющее быстро автоматизировать работу учетной системы 1С на ордерном и безордерном складе при работе как с товарами, подлежащими обязательной маркировке, так и с товарами, учет которых построен на базе линейных штрих-кодов. Решение поддерживает большинство распространенных складских документов, необходимых для работы кладовщику на терминале сбора данных. Для начинающих пользователей имеется подробная инструкция по работе с приложением в разрезе видов документов.

19000 руб.

24.06.2025    3190    26    0    

4

Мобильная разработка Мессенджеры и боты 1С:Предприятие 8 Платные (руб)

Теперь создать telegram-бота - элементарно. Достаточно просто нарисовать блок-схему телеграм-бота, и он сразу заработает. Это возможно при использовании Графического конструктора телеграм-ботов. Это единственный конструктор ботов для telegram, чье качество и функционал подтверждены фирмой 1С, есть сертификат 1С:Совместимо. Расширение в интерактивном режиме, с помощью блок-схем, позволяет с минимальными трудозатратами создать телеграм-ботов в любой конфигурации, работающей на платформе «1С:Предприятие 8.3».

13420 руб.

27.12.2021    52591    130    182    

228

Разработка внешних компонент POS терминал Рабочее место Розничная торговля Программист Пользователь 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Рестораны, кафе и фаст-фуд Реклама, PR и маркетинг Управленческий учет Платные (руб)

Медиадисплей покупателя может отображать текущую покупку на кассовом месте, показывать видеорекламу, баннеры, во время простоя разворачивать рекламу на весь экран. Экран можно использовать в качестве графического меню-борда в кафе и видеовывески. В качестве устройства отображения можно использовать Android-планшеты, смарт-телевизоры с Android, мониторы или проекторы под управлением Windows или Linux-компьютера. Linux-версия успешно запускается на одноплатных компьютерах Raspberri Pi и Orange Pi. Настраивается ЛЮБОЙ ДИЗАЙН экрана при помощи встроенного графического редактора! Решение можно масштабировать от одного экрана до тысяч экранов с централизованным управлением.

18300 руб.

30.05.2017    57277    11    71    

48

Разработка внешних компонент Системный администратор Программист Стажер Бесплатно (free)

Библиотека для работы с базами SQLite из 1С на основе внешней компоненты. Для Linux и Windows, бесплатно и с открытым исходным кодом!

14.01.2025    7117    bayselonarrend    17    

54

Разработка внешних компонент Программист 1С:Предприятие 8 Россия Бесплатно (free)

В статье описывается приложение-конструктор внешних компонент (native API). Конструктор упрощает процесс разработки за счет удобного добавления всех нужных функций и процедур в графическом режиме, с указанием их параметров и типов параметров. На выходе приложение генерирует готовый код на С++ и Rust и позволяет сразу приступить к реализации, без настройки API компоненты вручную.

04.12.2024    12257    kovalevdmv    29    

83
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Profi85 26.08.21 00:17 Сейчас в теме
Алексей, извиняйте за такой вопрос, но не хочу дублировать свою задачу здесь, очень попрошу прочитать ее по предоставленной ссылке по причине подробного описания там, как раз по этой теме:
https://forum.infostart.ru/forum92/topic268157/#message2707679
и ответьте, пожалуйста, ваша компонента справится с описанной задачей?
2. sivin-alexey 516 26.08.21 03:56 Сейчас в теме
(1) не проверял, нужно пробовать. Для вашей задачи можете перекомпилировать библиотеку, вызывая вместо locationManager.requestSingleUpdate метод requestLocationUpdates. Этот метод позволяет получать координаты с нужной периодичностью.
10. seregasame 11.07.22 16:28 Сейчас в теме
подскажите, при перекомпиляции я получаю apk в котором внутри в папке lib все so файлы, в Вашем apk их нет. Вы руками их оттуда убирали?
11. sivin-alexey 516 12.07.22 03:07 Сейчас в теме
12. seregasame 12.07.22 08:02 Сейчас в теме
(11) подскажите ещё по 1 вопросу, в мобильном клиенте компонента подключается, но внешнее событие не возникает, не сталкивались? Куда смотреть?
13. sivin-alexey 516 12.07.22 08:56 Сейчас в теме
(12)

1. Проверьте, назначен ли у формы обработчник внешнего события (недостаточно просто добавить процедуру, нужно указать её в качестве обработчика).

2. Попробуйте назначить обработчник внешнего события в модуле клиентского приложения.
14. seregasame 12.07.22 08:58 Сейчас в теме
(13) спасибо, у меня обработчик как раз в модуле приложения, попробую с формой
15. sivin-alexey 516 12.07.22 09:00 Сейчас в теме
(14) Если обработчик раз в модуле приложения, то и объект компоненты должен храниться в переменной модуля приложения.
16. seregasame 12.07.22 12:45 Сейчас в теме
(15) спасибо, получилось
Только почему то после изменения метода на requestLocationUpdates внешнее событие срабатывает только 1 раз, хотя значек gps при этом горит постоянно
3. Profi85 26.08.21 11:39 Сейчас в теме
(2) А есть возможность перед покупкой сначала проверить, подойдет ли ваша компонента для указанной моей задачи? Типа демо-версии этой компоненты, или что-то вроде этого? Не хотел тему засорять эти вопросом, но в ЛС не могу написать...
4. sivin-alexey 516 26.08.21 11:55 Сейчас в теме
(3) Такой возможности нет
5. Profi85 26.08.21 11:56 Сейчас в теме
(4) Понял, спасибо за информацию.
6. sikuda 686 17.11.21 09:24 Сейчас в теме
А координаты определяются по GPS или сети? Сам сервис Huawei - huawei.agconnect есть возможность задействовать?
Пока ищу решение проблемы - https://forum.mista.ru/topic.php?id=867950
7. sivin-alexey 516 17.11.21 10:45 Сейчас в теме
8. Mozar 11 24.05.22 09:56 Сейчас в теме
Здравствуйте. Встроенное определение координат (в платформе) работает очень медленно. Вы не сравнивали скорость работы с штатной процедурой?
9. sivin-alexey 516 24.05.22 10:06 Сейчас в теме
(8) Добрый день. Сравнивали, компонента работает быстрее.
17. nkroshko 20.09.22 13:57 Сейчас в теме
Алексей, загрузил Вашу компоненту, установил ее в модуле формы, столкнулся со следующей проблемой: если форма открывается на открытом пространстве, то все нормально, когда форма открывается в помещении, то координаты не определяются, что естественно. Я установил на форму кнопку "Обновить координаты", по нажатию которой вызываю метод GetLocation, что бы пользователь мог выйти на улицу и без переоткрытия формы получить координаты, но внешнее событие не происходит. Если форму переоткрыть, то координаты выдаются. В чем может быть ошибка?
18. AnDrU89 19.11.22 10:41 Сейчас в теме
Добрый день. А есть в этой компоненте проверка на точность позиции? Допустим надо чтобы точно определялось местоположение не меньше чем 5 метров? И ее надо каждый раз подключать при получении координат или при запуске приложения один раз подключаем и все?
19. sivin-alexey 516 19.11.22 11:47 Сейчас в теме
(18)
1. Проверки на точность позиции нет
2. Можно подключить один раз и сохранить объект компоненты в глобальной переменной модуля приложения
20. lewko_85 25.01.23 14:45 Сейчас в теме
Добрый день, столкнулся с проблемой, что при вызове внешнего события мобильная платформа вылетает. С чем может быть связанна данная проблема?
21. lewko_85 02.02.23 17:29 Сейчас в теме
Алексей, добрый день. Столкнулись с проблемой при попытке использовать вашу обработку.
Мобильное приложение 1С, при попытке использовать компоненту просто закрывается (вылетает). Такое впечатление что это происходит в момент инициализации внешнего события 1С из компоненты. То есть видим что компонента подключилась, успешно вызван метод "GetLocation()", видим на мобильном, в трее появился значок геолокации и через секунду приложение закрывается.
Видео с мобильного устройства прикладываю.

Обработка загружена в общий макет, код вызова в модуле формы ниже:
&НаКлиенте
Процедура ПолучитьКоординатыКомпанентой(Команда)
#Если МобильноеПриложениеКлиент Тогда
Успешно = ПодключитьВнешнююКомпоненту("ОбщийМакет.GetLocation", "Z9846", ТипВнешнейКомпоненты.Native);
КомпонентаGetLocation = Новый("AddIn.Z9846.GetLocation");
Успех = КомпонентаGetLocation.GetLocation();
Сообщить(Успех);
#КонецЕсли
КонецПроцедуры

&НаКлиенте
Процедура ВнешнееСобытие(Источник, Событие, Данные)

КонецПроцедуры
Показать


Алексей, сами разобраться не можем, так как нет опыта разработки подобных компонент. Помогите пожалуйста заставить компоненту работать.

Заранее благодарю!
Прикрепленные файлы:
XRecorder_02022023_172159.mp4
22. lewko_85 07.02.23 10:16 Сейчас в теме
(21) Коллеги, осторожней с покупкой!
КОМПОНЕНТА НЕ РАБОТАЕТ!!!
Нашли специалиста, который прочитал исходники и нашел в них критические ошибки!
Скачивать данную обработку бессмысленно!

Прошу администрацию сайта обратить внимание и принять меры по блокировке данной публикации, что бы остальные пользователи не тратили зря время и деньги.
user2028705; +1 Ответить
25. пользователь 27.02.24 14:22
Сообщение было скрыто модератором.
...
23. Dream_kz 129 22.09.23 19:25 Сейчас в теме
Не работает, андроид 13, ARM64
После получения события приложение падает
24. matashin 27.10.23 10:44 Сейчас в теме
У меня компонента работает, 10 андроид T8 планшет, но с точностью есть вопросы, координаты все время "пляшут" вокруг реальной точки.
Для отправки сообщения требуется регистрация/авторизация