Android. Проверить включен ли GPS.

1. x2z7yy 24.11.15 13:32 Сейчас в теме
Как можно проверить программно включена ли функция геопозиционирование?
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. realist 04.12.15 15:20 Сейчас в теме
Я использую такой код
Попытка
 	     СредстваГеопозиционирования.ПодключитьОбработчикИзмененияМестоположения(ОписаниеОповещения, "gps",1 , Период);    
	Исключение
	     ЗавершитьРаботуСистемы(Ложь);
	КонецПопытки;
3. realist 24.02.16 08:16 Сейчас в теме
Опытным путем выяснилось, что этот код может не работать(на одном устройстве не пашет, на другом нормально все) на Android версии ниже, чем 4.1.2
4. AganinEvgeniy 2 17.07.17 15:47 Сейчас в теме
Доброго времени суток, камрады!
Пытаюсь выполнить вызов ПодключитьОбработчикИзмененияМестоположения с указанием процедуры в виде строки к примеру:
СредстваГеопозиционирования.ПодключитьОбработчикИзмененияМестоположения("ПериодическийОтловГПСДанных()","gps",,30);
При запуске в мобильном приложении выдает ошибку "Недопустимое значение параметра (параметр номер "1")
Ну а при развороте "... ошиюка при вызове метода контекста (ПодключитьОбработчикИзмененияМестоположения) по причине ...." ну и дальше по тексту. Кто-нибудь может подсказать в чем проблема?
Платформа 8.3.10.51.
Данный код пытаюсь выполнить в процедуре ПриОткрытии(), в форме.
5. Dream_kz 129 17.07.17 15:49 Сейчас в теме
6. AganinEvgeniy 2 17.07.17 15:49 Сейчас в теме
(5) убирал, хрен редьки не слаще ....
7. Dream_kz 129 17.07.17 15:53 Сейчас в теме
(6) Через описание оповещения сделай
8. AganinEvgeniy 2 17.07.17 15:58 Сейчас в теме
(7) пробовал так:
#Если МобильноеПриложениеКлиент Тогда
//ОпсианиеОповещения = Новый ОписаниеОповещения("ПериодическийОтловГПСДанных", ЭтотОбъект);
СредстваГеопозиционирования.ПодключитьОбработчикИзмененияМестоположения("ПериодическийОтловГПСДанных","gps",,30);
#КонецЕсли
всё проходит без ошибок ... но в самой процедуре вывел сообщить ... фиг что проходит.
Само собой пробовал без комментариев :-)
9. Dream_kz 129 17.07.17 16:01 Сейчас в теме
(8) Попробуй выводить через СообщениеПользователю, либо просто обновлять РС, а в форме списка смотреть что добавляется, либо отладкой
10. AganinEvgeniy 2 17.07.17 16:03 Сейчас в теме
(9) пробовал .... просто выводить сообщение, без какого-либо другого кода ... ничего не выводится. В регистр сведений пробовал писать, но там какая-то шляпа с передачей данных в серверную процедуру ... пишет, что нет такой процедуры. Хотя выставлял &НаСервере и Экспорт ... сути это не меняет, процедуры такой нет и хоть ты застрелись :-(
11. Dream_kz 129 17.07.17 16:07 Сейчас в теме
(10)
просто выводить сообщение

Как?
15. AganinEvgeniy 2 17.07.17 16:14 Сейчас в теме
(11) пробовал и через Новый СообщениеПользователю и через просто Сообщить() ... сути не меняет. Ничего не выводится пользователю
12. Dream_kz 129 17.07.17 16:09 Сейчас в теме
(10)
какая-то шляпа с передачей данных в серверную процедуру

Все там нормально
13. AganinEvgeniy 2 17.07.17 16:11 Сейчас в теме
(12)Вот весь код формы:
&НаКлиенте
Процедура ПриОткрытии(Отказ)
	#Если МобильноеПриложениеКлиент Тогда
		ОпсианиеОповещения = Новый ОписаниеОповещения("ПериодическийОтловГПСДанных", ЭтотОбъект);
		СредстваГеопозиционирования.ПодключитьОбработчикИзмененияМестоположения(ОпсианиеОповещения,"gps",,30);
	#КонецЕсли
КонецПроцедуры

&НаКлиенте
Процедура ПериодическийОтловГПСДанных() Экспорт
	#Если МобильноеПриложениеКлиент Тогда
		ПолСообщ = Новый СообщениеПользователю();
		ПолСообщ.Текст = "Пымал!";
		ПолСообщ.Поле = ЭтаФорма.Элементы.СписокКоординат;
		ПолСообщ.УстановитьДанные(ЭтотОбъект);
		ПолСообщ.Сообщить();
		
	#КонецЕсли
КонецПроцедуры

&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
	Если ИмяСобытия = "ПериодическийОтловГПСДанных" Тогда
		ПериодическийОтловГПСДанных();
	КонецЕсли;
КонецПроцедуры
Показать
16. Dream_kz 129 17.07.17 16:16 Сейчас в теме
(13) Менять местоположение пробовал?
17. AganinEvgeniy 2 17.07.17 16:18 Сейчас в теме
(16) в смысле? Я и хочу в этом обработчике использовать вместо сообщить конструкцию: "СредстваГеопозиционирования.ОбновитьМестоположение(ТекущийПровайдер, 10);". Но она у меня не попадает даже в эту процедуру.
Зачем мне ПЕРЕД началом обработкиожидания менять местоположение? Ща попробую .... хотя и сомневаюсь, что взлетит.
19. Dream_kz 129 17.07.17 16:21 Сейчас в теме
(17) По городу походить
AganinEvgeniy; +1 Ответить
20. AganinEvgeniy 2 17.07.17 16:22 Сейчас в теме
(19) А! Понял ... не пробовал. Но я же поставил обновление по времени, а не по метражу. Ну ... ща опробирую ....
21. AganinEvgeniy 2 17.07.17 16:38 Сейчас в теме
(19) Похоже что проблема решена ... Ваш покорный слуга дятел :-). Спасибо за помощь! Проблема была не в том, что указана процедура отлова данных по метражу, а просто я ГПС вырубил на устройстве физически вечером и забыл сегодня его активировать. Сейчас включил и сразу же вылезло сообщение. И динамический список на форме сейчас обновляется нужными мне данными .... ура-ура!!!
22. bubus 19.07.17 08:35 Сейчас в теме
(21)Этож какую батарею за спиной таскать надо с постоянно включенным ЖПС?)))
23. AganinEvgeniy 2 19.07.17 12:23 Сейчас в теме
(22) Я бы не сказал что очень большую. У меня на телефоне ГПС не отключается физически вообще и по 2-4 часа в день оно используется в полной мере в навигаторе, а кроме того всякие вай-фай и блютуз так же не вырубаются и телефон держит заряд с самого утра и до позднего вечера ... и это не какой-нибудь OUKITEL K10000 с неубиваемой батареей, а рядовой Самсунг.
18. AganinEvgeniy 2 17.07.17 16:20 Сейчас в теме
(16) собственно поменял процедуру приоткрытии:
&НаКлиенте
Процедура ПриОткрытии(Отказ)
	#Если МобильноеПриложениеКлиент Тогда
		ТекущийПровайдер = "gps";
		СредстваГеопозиционирования.ОбновитьМестоположение(ТекущийПровайдер, 15);
		ОпсианиеОповещения = Новый ОписаниеОповещения("ПериодическийОтловГПСДанных", ЭтотОбъект);
		СредстваГеопозиционирования.ПодключитьОбработчикИзмененияМестоположения(ОпсианиеОповещения,"gps",,30);
	#КонецЕсли
КонецПроцедуры
Показать

Сути не поменялось.
14. AganinEvgeniy 2 17.07.17 16:12 Сейчас в теме
никаких сообщений не выводится и в точку останова не выходит, которую я ставлю при создании сообщения пользователю. Хотя в самой процедуре ПриОткрытии() точка останова отрабатывается ...
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)