Получает массив учетных записей календарей доступных на устройстве.
Синтаксис
ПолучитьУчетныеЗаписиКалендарей()Полное описание, параметры и ограничения
МенеджерКалендарей.ПолучитьУчетныеЗаписиКалендарей (CalendarsManager.GetCalendarAccounts)
МенеджерКалендарей (CalendarsManager)
ПолучитьУчетныеЗаписиКалендарей (GetCalendarAccounts)
Доступен, начиная с версии 8.3.4.
Синтаксис:
ПолучитьУчетныеЗаписиКалендарей()
Возвращаемое значение:
Тип: Массив.
Массив содержит элементы типа УчетнаяЗаписьКалендарей.
Описание:
Получает массив учетных записей календарей доступных на устройстве.
Доступность:
Мобильный клиент, мобильное приложение (клиент).
Использование в версии:
Доступен, начиная с версии 8.3.4.
Методическая информация
Практические примеры
Прочитать доступные учётные записи без раскрытия их имён
Проверяем API, локальную учётную запись и поддержку ключей; основной календарь не запрашивается, потому что такой запрос может его создать.
Где и как запускать
Полный клиентский модуль собственной мобильной управляемой формы. Не вставляйте процедуры внутрь другой процедуры.
Подготовка
Мобильный клиент/мобильное приложение 1С на собственном тестовом устройстве, не настольный тонкий клиент. Используйте отдельную пустую конфигурацию УчебнаяКонфигурацияСинтаксиса.
Первый урок работает только с данными в памяти. Для обращения к календарям вручную разрешите учебному приложению доступ в настройках ОС; доступность API не заменяет разрешение.
Для уроков добавления, изменения и удаления используйте только отдельное учебное устройство/профиль с локальными календарями без синхронизации, приглашений и рабочих событий. Не используйте основной личный/корпоративный календарь.
Код вставляется на уровне модуля собственной управляемой формы. Команды с указанными именами создайте вручную и назначьте им одноимённые обработчики.
Никакой из этих рецептов в настоящем мобильном клиенте не запускался автоматически. Проверяйте разрешения, фактические типы и контрольные результаты на своём учебном устройстве.
&НаКлиенте
Процедура ВыполнитьПример(Команда)
Менеджер = Новый МенеджерКалендарей;
Сообщить("Добавление календарей: " + Строка(Менеджер.ПоддерживаетсяДобавлениеКалендарей()));
Сообщить("Глобальные ключи календарей: " + Строка(Менеджер.ПоддерживаютсяГлобальныеКлючиКалендарей()));
Сообщить("Глобальные ключи событий: " + Строка(Менеджер.ПоддерживаютсяГлобальныеКлючиСобытий()));
Записи = Менеджер.ПолучитьУчетныеЗаписиКалендарей();
Сообщить("Доступных учётных записей: " + Строка(Записи.Количество()));
Для Каждого Запись Из Записи Цикл
Сообщить(ТипЗнч(Запись) = Тип("УчетнаяЗаписьКалендарей"));
Сообщить(ТипЗнч(Запись.Идентификатор) = Тип("Строка"));
Сообщить(ТипЗнч(Запись.ИсточникУчетнойЗаписи) = Тип("Строка"));
КонецЦикла;
ЛокальнаяЗапись = Менеджер.ПолучитьЛокальнуюУчетнуюЗаписьКалендарей();
Сообщить(ТипЗнч(ЛокальнаяЗапись) = Тип("УчетнаяЗаписьКалендарей"));
Сообщить("Источник локальной записи задан: " + Строка(Не ПустаяСтрока(ЛокальнаяЗапись.ИсточникУчетнойЗаписи)));
КонецПроцедурыРазбор по шагам
Создайте команду ВыполнитьПример и заранее разрешите доступ только учебному приложению.
МенеджерКалендарей создаётся без параметров. Он не является данными одного календаря.
ПолучитьУчетныеЗаписиКалендарей возвращает массив объектов, не строки адресов. Мы показываем только число и проверки типов, не идентификаторы и источники всех личных записей.
ПолучитьЛокальнуюУчетнуюЗаписьКалендарей получает локальную запись. По справке Android использует фиктивную LOCAL, iOS штатный механизм; код не присваивает чужой источник вручную.
По установленной справке глобальные ключи календарей не поддерживаются, событий поддерживаются. Всё равно читаем фактический ответ текущего устройства.
ПолучитьОсновнойКалендарь намеренно отсутствует в этом читающем уроке: на Android без календарей метод может создать LOCAL.
Как проверить результат
Выведено фактическое число записей; проверки типов доступных записей и локальной записи дают Истина.
Идентификаторы/адреса учётных записей не попали в Сообщить; код не вызывает добавление, изменение или удаление календарей.
Ожидаемый результат
Получены реальные возможности и локальная учётная запись без предположений о конкретном аккаунте.
На что обратить внимание
ПоддерживаетсяДобавлениеКалендарей не доказывает наличие разрешения ОС или права писать любой календарь.
LOCAL и основная учётная запись — не одно и то же; не переключайте пример на корпоративную запись.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.