Получать события смены сети и отключать обработчик

Учебные задачи

Сохраняем описание одного обработчика в форме и используем его при подключении и отключении.

Где и как запускать

Модуль управляемой формы: &НаКлиенте; мобильный клиент или мобильное приложение (клиент).

Подготовка

  1. В модуле собственной мобильной формы разместите весь блок, включая переменную и экспортный обработчик.

  2. Создайте две кнопки: СледитьЗаСетью и ПерестатьСледитьЗаСетью; из их действий вызывайте одноименные процедуры.

&НаКлиенте
Перем ОписаниеСети;

&НаКлиенте
Процедура СледитьЗаСетью()
    Если ОписаниеСети <> Неопределено Тогда
        Возврат;
    КонецЕсли;
    ОписаниеСети = Новый ОписаниеОповещения("ПриСменеСети", ЭтотОбъект, "Учебная сеть");
    ИнформацияОбИнтернетСоединении.ПодключитьОбработчикИзмененияИнтернетСоединения(ОписаниеСети);
КонецПроцедуры

&НаКлиенте
Процедура ПриСменеСети(ДополнительныеПараметры) Экспорт
    Сообщить(ДополнительныеПараметры + ": " + Строка(ИнформацияОбИнтернетСоединении.ПолучитьТипСоединения()));
КонецПроцедуры

&НаКлиенте
Процедура ПерестатьСледитьЗаСетью()
    Если ОписаниеСети <> Неопределено Тогда
        ИнформацияОбИнтернетСоединении.ОтключитьОбработчикИзмененияИнтернетСоединения(ОписаниеСети);
        ОписаниеСети = Неопределено;
    КонецЕсли;
КонецПроцедуры

Разбор по шагам

  1. Первая кнопка создает и сохраняет описание обработчика.

  2. На своем устройстве вручную смените Wi-Fi на другой безопасный режим.

  3. Вторая кнопка отключает тот же обработчик.

Как проверить результат

  1. После смены сети наблюдайте сообщение настоящего обработчика.

  2. После отключения наблюдайте поведение при следующей смене сети; не считайте сам возврат из метода подтверждением доставки всех событий.

Ожидаемый результат

Уведомления о фактических изменениях сети без опроса по таймеру.

На что обратить внимание

  1. Не вызывайте ПриСменеСети вручную вместо системного события. Справка не гарантирует мгновенную доставку и отсутствие запоздавшего события после отключения. При ошибке подключения или отключения не повторяйте вызов автоматически.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.