СредстваТелефонии.ПоддерживаетсяЖурналЗвонков

Методы · CallLogSupported

Определяет, доступен ли журнал звонков на данном устройстве.

Синтаксис

ПоддерживаетсяЖурналЗвонков()
Полное описание, параметры и ограничения

СредстваТелефонии.ПоддерживаетсяЖурналЗвонков (TelephonyTools.CallLogSupported)

СредстваТелефонии (TelephonyTools)

ПоддерживаетсяЖурналЗвонков (CallLogSupported)

Доступен, начиная с версии 8.3.5.

Синтаксис:
ПоддерживаетсяЖурналЗвонков()
Возвращаемое значение:
Тип: Булево.

Истина - для Android при наличии телефонного модуля,

Ложь - для остальных операционных систем.

Описание:

Определяет, доступен ли журнал звонков на данном устройстве.

Доступность:

Мобильный клиент, мобильное приложение (клиент).

См. также:
СредстваТелефонии, метод ПолучитьЖурналЗвонков

Использование в версии:

Доступен, начиная с версии 8.3.5.

Методическая информация

Практические примеры

Звонки по своему номеру: длительность и итог

Получаем настоящий журнал Android, отбираем свой учебный номер и переводим суммарные секунды в минуты.

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

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

Подготовка

  1. На собственном учебном Android с телефонным модулем разрешите приложению доступ к журналу звонков.

  2. Создайте реквизит формы НомерДляОтбора типа Строка и заполните точным номером своего учебного контакта; вызовите ПоказатьЗвонки из кнопки.

&НаКлиенте
Процедура ПоказатьЗвонки()
    Если Не СредстваТелефонии.ПоддерживаетсяЖурналЗвонков() Тогда
        Сообщить("Журнал звонков недоступен");
        Возврат;
    КонецЕсли;
    Журнал = СредстваТелефонии.ПолучитьЖурналЗвонков();
    Если Журнал = Неопределено Тогда
        Сообщить("Не удалось получить журнал");
        Возврат;
    КонецЕсли;
    Отбор = Новый ОтборКомпоновкиДанных;
    Условие = Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    Условие.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("НомерТелефона");
    Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    Условие.ПравоеЗначение = НомерДляОтбора;
    Условие.Использование = Истина;
    Записи = Журнал.НайтиЗаписи(Отбор);
    Секунды = 0;
    Для Каждого Запись Из Записи Цикл
        Секунды = Секунды + Запись.Продолжительность;
        Сообщить(Строка(Запись.Дата) + "; " + Запись.НомерТелефона
            + "; " + Строка(Запись.ТипЗвонка) + "; " + Строка(Запись.Продолжительность) + " с");
    КонецЦикла;
    Сообщить("Найдено: " + Строка(Записи.Количество()) + "; минут: " + Строка(Секунды / 60));
КонецПроцедуры

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

  1. Проверка поддержки предшествует чтению журнала.

  2. Отбор выбирает только введенный номер.

  3. Для найденных записей выводятся дата, номер, тип и секунды; затем сумма в минутах.

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

  1. Сопоставьте число записей и секунды с собственным журналом Android.

  2. Для номера без записей получите ноль записей и ноль минут.

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

Фактические звонки своего номера и рассчитанная суммарная длительность; пример не создает звонков.

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

  1. Дата записи дана в универсальном времени. Номера в журнале могут иметь другой формат, чем введенный номер. Данные журнала личные: не используйте чужой телефон и не отправляйте результат на сервер.

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

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

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

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

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