Попрощайтесь с надоедливыми или просто нежелательными телефонными звонками и смс!

Приложение Call Control является наиболее эффективным блокировщиком вызовов для Android. Он позволяет вам контролировать вашу конфиденциальность и безопасность. Управление вызовами осуществляется по принципу анти-вирусу для телефонных звонков, он работает в фоновом режиме и всегда блокирует нежелательные звонки и текстовые сообщения.

По сути, Call Control на Android дает вам возможность завести черный и белый списки. Вы сами определяете, какие абоненты будут игнорироваться, а какие приниматься.

Процесс добавления номера довольно-таки простой. Окно добавления состоит из двух полей и трех кнопок. Номер можно либо вводить вручную(ввод номера в формате +7ххххх, нажать Save), либо добавить его из списка последних набранных\\принятых звонков(нажать Recent Call),либо выбрать номер из списка контактов (нажать Contacts).

Другие возможности Call Control:

Сохранение всех списков как онлайн, так и на вашей SD-карте для легкого восстановления или перевода их на другое устройство.

Бесплатный обратный поиск: найдите любой неизвестный телефонный номер и узнайте, кто вам звонит.

Опция сообщество содержит номера телефонов мошенников, спама и т.д.

Бесплатное автоматическое обновление сообщества (Pro версия).

Поддерживается блокировка ожидания вызова.

Поддерживается ОС Android 2.3 Gingerbread

Режим Конфиденциальность.

Функция My Backups позволяет создавать резервную копию всех ваших списков(Pro версия).

Быстрый поиск по номерам.

Сегодня мы рассмотрим еще три интересные «звонилки», призванные значительно облегчить и без того легкую жизнь с мобильным устройством. Напомним, что в прошлой статье речь шла о Truedialer, True Phone и PixelPhone.

реклама

В тот раз первый подопытный почти что обогнал по функциональности лидера цикла – 2GIS Dialer, второй – проявил себя положительно со всех сторон, что крайне редко бывает с приложениями на Google Play, ну а третий товарищ составил конкуренцию лидеру, предложив самый быстрый способ управления звонками и телефонной книгой. Сегодня же мы поговорим о не совсем обычных номеронабирателях.

Первым пойдет экспериментальный drupe, призванный максимальнейшим образом облегчить обращение с номеронабирателем и телефонной книгой. Здесь, между прочим, применен некий хитрый способ управления вызовами одной кнопкой. По крайней мере, именно так можно понять разработчиков. Второй пациент – ZenUI. Как видно из названия, это решение пришло из одноименной тайваньской оболочки, а значит, пройти мимо этого именитого товарища никак нельзя. Ну и закончит обзор старина Contacts & Phone & Dialer , коего мы изучали в то время, когда только начинали обозревать android-приложения.

В качестве тестового оборудования использовались планшет DEXP Ursus 8EV2 3G (Android 4.4.2, процессор MT8382, 4 x Cortex-A7 1.3 ГГц, видеоядро Mali-400 MP2, 1 Гбайт ОЗУ, аккумулятор 4 000 мАч, 3G-модуль, Wi-Fi 802.11b/g/n) и смартфон Homtom HT3 Pro (Android 5.1 Lollipop, процессор MT6735P, 4 x Cortex-A53 1.0 ГГц, 64-бит, видеоядро Mali-T720, 2 Гбайт ОЗУ, аккумулятор 3 000 мАч, 4G-модуль, Wi-Fi 802.11b/g/n).

Возможности голосового управления в операционной системе Android присутствуют очень давно. Еще в версии 2.3 Gingerbread (2010 год) пользователи могли совершать поисковые запросы или какие-либо функциональные действия с помощью голоса. Только тогда это выглядело очень странно и работало аналогично. Что теперь представляет из себя голосовое управление Android и какие функции оно может предложить миллионам пользователей? Ответы на все вопросы вы найдете в этой статье.

Голосовой поиск

Голосовой поиск представляет собой возможность искать информацию в интернете, используя голосовые команды, а не традиционные текстовые запросы. Он может использоваться на компьютере в браузере Chrome, а также на смартфоне и планшете с Android в приложении Google. Запуск системы доступен в виде двух способов - с помощью команды Ok Google или по нажатию на логотип микрофона.

Современный голосовой поиск стал одной из основ операционной системы Android. Сейчас он совместим с десятками продуктов и приложений компании. Google делает большой акцент на возможности искать любую информацию в интернете, просто произнеся желаемый запрос голосом. Сегодня, 7 лет спустя, голосовой поиск Google умеет практически все и может полностью удовлетворить рядового пользователя ОС.

  • Справка.
  • Люди.
  • Время и календарь.
  • Погода.
  • Рынки и биржи.
  • Конвертация и калькулятор.
  • Навигация.
  • Звонки и SMS.
  • Словарь и перевод.
  • Контроль.
Функциональность каждой из этих команд мы разберем далее.

Справка

Поиск Google предоставляет широкую справочную информацию практически на любой вид запроса, основываясь на семантическом поиске и системе машинного обучения RankBrain. Столица страны, создатель известной архитектуры, автор популярной картины, высоты величайших башен и гор мира, статусы авиарейсов и посылок, время рассвета и заката, глубины рек и озер и так далее. Список можно очень долго продолжать - в действительности он велик. Вкратце - если нужно быстро узнать что-то или о ком-то, то голосовой поиск Google всегда выручит.






Примеры:

  1. Столица Великобритании.
  2. Высота Шанхайской башни.
  3. Кто придумал Android.
  4. Длина Титаника.
  5. Калорийность грецких орехов.

Люди

Поисковая система Google поможет найти известного человека в сети и всю доступную информацию о нем. Основные данные берутся из популярных источников - социальных сетей или страниц в Википедии. Пользователь может узнать самые различные факты об искомой личности: настоящие ФИО, где и кем работает, место и даты рождения и смерти, наличие брака, кто родители, имеются ли дети, номинации, какое образование. Вдобавок ко всему приложение показывает связанные запросы. Они основываются на деятельности человека и сортируются по категориям: музыканты, писатели, блогеры, президенты и так далее.






Примеры:

  1. Девушка Супермена.
  2. Где умер Ленин.
  3. Кто нарисовал Крик.
  4. Сколько лет Дональду Трампу.
  5. Кто такой Павел Дуров.

Время и календарь

Поиск Google синхронизирован с календарем, поэтому при тематическом запросе может выдать результаты, связанные с планируемыми встречами или заметками. Также прямо внутри приложения одним голосом можно установить будильник, таймер, добавить встречу, напомнить купить хлеб или попросить разбудить завтра в 9 утра. Вариантов работы со временем и календарем в поиске много - от типичных запросов про время восхода солнца до установки полноценных напоминаний.







Примеры:

  1. Во сколько восход в Тольятти.
  2. Какой часовой пояс в Нью-Йорке.
  3. Разбуди меня завтра в 11 утра.
  4. Установить таймер на 5 минут.
  5. Добавить встречу/напоминание.

Погода

Один из наиболее часто используемых запросов в голосовом поиске Google - информация про погоду. Помимо стандартных команд для открытия погодных данных на текущий день или неделю, пользователь может узнать погоду в любой точке мира - в соседнем городе или в стране на другом конце планеты. Также примечательно, что поиск Google понимает различные запросы относительно погоды - например, что с погодой или будет ли сегодня дождь.






Примеры:

  1. Что с погодой.
  2. Будет ли сегодня дождь.
  3. Погода в Киеве.
  4. Скорость ветра.
  5. Какие осадки завтра.

Рынки и биржи

С помощью голосового поиска Google можно мгновенно узнать текущую стоимость ценных бумаг или актуальный курс валют. В системе представлено большое количество международных корпораций, котировки акций которых обновляются каждую секунду. Помимо технологических гигантов Microsoft, Apple, Google, Samsung, Nokia, LG, Lenovo и других, присутствуют и компании из других областей: Газпром, Сбербанк, Яндекс, Вымпелком, Аэрофлот и прочие. Можно просматривать не только цены акций, но и другие важные векторы развития: рыночную капитализацию, прибыльность или дивидендный доход.






Примеры:

  1. Цена акций Nokia.
  2. Сколько стоит доллар.
  3. Курс биткоина к рублю.
  4. Капитализация Сбербанка.
  5. Индекс Dow Jones.

Конвертация и калькулятор

Поисковая система Google поддерживает различные математические операции - сложение, вычитание, умножение, деление, корень и проценты. Таким образом, вы можете выполнять не только простейшие расчеты, но и узнавать корни и проценты из сложных чисел. Также прямо внутри приложения можно конвертировать валюты - считать количество рублей в долларе, долларов в рубле, евро в рубле или долларов в евро. Функция удобна своей скоростью - стоит только сказать команду, как за считанные секунды на экране появится результат. Нет необходимости искать в дебрях меню приложение калькулятора и делать все самостоятельно, тратя лишнее время.






Примеры:

  1. Сколько в километре сантиметров.
  2. 850 рублей в тенге.
  3. Квадратный корень из 200.
  4. 10 186 поделить на 4.
  5. 30% от 35 000.

Навигация

С помощью голосовых команд через поиск Google можно полноценно ориентироваться по местности и даже больше того. Прокладывание маршрутов от точки до точки (пешком, на машине или общественном транспорте), показ близлежащих общественных заведений, а также просмотр карт городов и поиск достопримечательностей - все это доступно для поиска посредством голосовых команд.






Примеры:

  1. Карта Белгорода.
  2. Маршрут до Кремля (можно добавить «пешком» или «на машине»).
  3. Где находится Монгора.
  4. Кафе поблизости.
  5. Ближайшая аптека.

Звонки и SMS

Было бы странно, если через голосовой поиск Google нельзя было бы звонить или отправлять текстовые сообщения. Это одни из самых часто используемых функций в телефоне, поэтому без упрощенного доступа к ним обойтись нельзя. Поисковый гигант это понимает, поэтому посредством специальных голосовых команд через поиск Google можно быстро позвонить или написать сообщение - без рук, только голосом. То же самое касается и электронных писем через Gmail. Это будет удобно в ситуации, когда руки заняты или используется гарнитура.






Примеры:

  1. Позвонить сестре.
  2. Позвонить в ближайшую пиццерию.
  3. Написать Саше «Я уже в офисе».
  4. Написать Насте «Встретимся у метро».
  5. Отправить письмо.

Словарь и перевод

В поисковую систему Google встроен фирменный сервис перевода компании. Вы можете переводить слова или целые фразы на все доступные в Google Переводчике языки просто произнеся соответствующую голосовую команду. Помимо переводчика, в приложении присутствует поддержка словаря - поиск слов и их значений еще никогда не был таким легким.






Примеры:

  1. Что такое человеконенавистничество.
  2. Определение композиции.
  3. Как переводится Believe.
  4. Как будет автобус на испанском.
  5. Перевод с русского на турецкий.

Контроль

Помимо всего вышеперечисленного, голосовой поиск Google позволяет контролировать отдельные настройки операционной системы и вместе с этим запускать установленные приложения. По умолчанию поддерживается немного функций (Wi-Fi, Bluetooth, фонарик, яркость), но на деле их вполне достаточно. Вы можете без лишних движений менять яркость экрана, включать или отключать Wi-Fi и Bluetooth, активировать фонарик или даже управлять аудиоплеером. Все это работает, и причем отлично - благодаря запрограммированным голосовым командам.











В Android также присутствуют функции для людей с ограниченными возможностями. Помимо TalkBack (озвучивание происходящего на экране), существует еще один сервис с дополнительной функциональностью. Он называется Voice Access и позволяет активировать управление голосовыми командами в масштабе всей системы. Приложение является экспериментальным и было выпущено в 2016 году. В настоящее время Voice Access по-прежнему в бета-версии, но это не мешает помощнику стабильно выполнять свои функции.



В основе Voice Access лежат те же технологии, которые Google использует для голосового поиска. При активации сервиса каждому элементу на экране присваивается определенный номер. Он служит командой для запуска приложений или работы с той или иной функцией. Никакого физического взаимодействия при этом не требуется - стоит лишь назвать цифру элемента, который необходимо открыть.





На этом функциональность Voice Access не заканчивается. Также с помощью этого приложения голосовые команды становятся доступными в пределах всей операционной системы. Например, среди прочих команд поддерживаются такие, как «открой браузер», «перейди на домашнюю страницу» или «пролистай вниз». Голосом заменяется все - основные функции, навигация, жесты (нажатие, пролистывание, действие назад) и работа с текстом (ввод, редактирование, форматирование).



Несмотря на статус бета-версии, приложение Voice Access выводит голосовое управление в Android на вершину возможностей. Совместно с поиском Google это два лучших голосовых помощника, предлагающих еще более простое взаимодействие с устройством.

В Android существует программный интерфейс к низкоуровневому аппаратному стеку телефона. С его помощью можно написать программу для набора номера или обрабатывать входящий звонок - например, негласно или инициировать . Словом, интересных штук можно придумать массу.

Одной из самых популярных программ времен Symbian и «Нокии» был так называемый черный список звонков, позволяющий оградить тонкую натуру владельца телефона от нежелательных абонентов. И хотя сегодня подобная функциональность интегрирована в некоторые прошивки смартфонов, зачастую такие возможности сводятся лишь к банальному перманентному «бану» контакта в адресной книге. В исследовательских целях рассмотрим, как подобный механизм реализуется на практике. Будем считать, что ты давно читаешь рубрику «Кодинг», живешь в Android Studio и ругаешься исключительно на Java.

А где у него кнопочки?

Каким бы ни было приложение, официальным или негласным (только для личного пользования в целях исследования, естественно), одинаково плохо, если оно будет падать из-за отсутствия на устройстве телефонных функций (Wi-Fi-планшет). Поэтому первое, что стоит сделать, - проверить таковые:

PackageManager pm = getPackageManager(); boolean isTelephonySupported = pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY); boolean isGSMSupported = pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY_GSM);

Как видишь, мы воспользовались методом hasSystemFeature из объекта PackageManager, указав константу FEATURE_TELEPHONY в качестве параметра. Кроме того, имеет смысл дополнительно проверить поддержку GSM-модуля константой FEATURE_TELEPHONY_GSM .

Если обе константы лживы, то мы ошиблись устройством, ничего не поделаешь. В этом случае стоит завершить работу приложения, а на выходе попросить пользователя сменить девайс;).

Принимаем первый звонок

С помощью класса PhoneStateListener в Android’е отслеживается состояние телефона, но лишь в том случае, если приложение запросило полномочие READ_PHONE_STATE в своем манифесте:

Далее необходимо переопределить и зарегистрировать метод onCallStateChanged в реализации PhoneStateListener , чтобы получать уведомления об изменении состояния телефонного вызова. Готовая реализация представлена ниже:

PhoneStateListener stateListener = new PhoneStateListener() { public void onCallStateChanged(int state, String incomingNumber) { switch (state) { case TelephonyManager.CALL_STATE_IDLE: break; case TelephonyManager.CALL_STATE_OFFHOOK: break; case TelephonyManager.CALL_STATE_RINGING: doMagicWork(incomingNumber); // Поступил звонок с номера incomingNumber break; } } }; ... TelephonyManager.listen(stateListener, PhoneStateListener.LISTEN_CALL_STATE); // Помещаем в onCreate активности

Когда поступает звонок, целочисленный параметр state принимает значение CALL_STATE_RINGING , что приводит к вызову нашей боевой (или мирной) нагрузки в виде функции doMagicWork .


В природе данный вариант приема телефонного звонка используется чуть реже, чем никогда. Дело в том, что в момент звонка приложение должно работать на переднем плане, - такое своеобразное использование придумать сложновато (разве только в отладочных целях), поэтому двигаемся дальше.

Принимаем второй звонок

Когда состояние телефона изменяется (например, в результате приема звонка), объект TelephonyManager начинает транслировать намерение (Intent) с действием ACTION_PHONE_STATE_CHANGED .

Намерения - межпрограммный фреймворк для обмена сообщениями. Намерения широко используются в Android для запуска/остановки активностей и сервисов, трансляции сообщений по всей системе, неявного вызова активностей, сервисов и широковещательных приемников.

Широковещательные приемники - компоненты, с помощью которых приложение может отслеживать намерения и реагировать на любые полученные действия. Приемники реализуют событийную модель взаимодействия приложений и системы. Более подробно тема создания широковещательного приемника рассмотрена в статье « ».

Как и в предыдущем случае, приложение должно получить разрешение READ_PHONE_STATE в манифесте:

Там же регистрируется и широковещательный приемник, способный отслеживать трансляцию намерения:

При таком подходе мы всегда можем получать информацию о входящих звонках, даже если приложение в данный момент не запущено.

Намерение, сообщающее об изменении состояния телефона, будет содержать два параметра: EXTRA_STATE_RINGING - признак входящего звонка и EXTRA_INCOMING_NUMBER - телефонный номер звонящего.

Public class PhoneStateChangedReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { String phoneState = intent.getStringExtra (TelephonyManager.EXTRA_STATE); if (phoneState.equals(TelephonyManager.EXTRA_STATE_RINGING)) { String incomingNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER); doMagicWork(incomingNumber); // Поступил звонок с номера incomingNumber } } }

Такой подход и следует использовать на практике.

Положи трубку!

Итак, телефон весело звонит, номер входящего определен, наш широковещательный приемник сработал. Что дальше?

Если рассматривать вариант черного списка или же бота, выполняющего команды извне, то неплохо бы научиться вешать трубку, не привлекая внимания пользователя. Аппаратный стек телефона очень похож на нулевое кольцо (ring 0) в Windows, в том смысле, что тоже представляет собой низкоуровневый системный компонент. Поэтому не существует стандартного способа до него добраться (особенно если у тебя нерутованный аппарат).

Как вариант, можно попытаться использовать язык описания интерфейсов (Android Interface Definition Language, AIDL) для обеспечения межпроцессного взаимодействия между компонентами системы.

Для этого необходимо добавить в проект файл-интерфейс ITelephony.aidl следующего вида:

Package com.android.internal.telephony; interface ITelephony { boolean endCall(); void answerRingingCall(); void silenceRinger(); }

Следующий код подхватит интерфейс и, используя рефлексию, «положит» трубку:

Import java.lang.reflect.Method; import com.android.internal.telephony.ITelephony; ... TelephonyManager telephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); try { Class c = Class.forName(telephony.getClass().getName()); Method m = c.getDeclaredMethod("getITelephony"); m.setAccessible(true); telephonyService = (ITelephony) m.invoke(telephony); telephonyService.endCall(); } catch (Exception e) { e.printStackTrace(); }

Чтобы это хозяйство заработало, приложение должно получить еще одно разрешение в манифесте:

Из-за этого применить подобный способ на устройствах с Android 2.3 и выше не выйдет, так как начиная с Gingerbread данное разрешение считается системным и попытка его использовать приведет к падению приложения:

Neither user 10031 nor current process has android.permission.MODIFY_PHONE_STATE

Но ведь в Google Play полно приложений, реализующих черный список! Как же они работают? Условно их можно разделить на две группы (кроме тех, кто честно юзает AIDL): фальшивки и... костыли. Первые всего лишь имитируют работу, периодически показывая в шторке статистику «заблокированных» звонков (и СМС). Взамен они требуют доступ в интернет, скачивают килотонны рекламы, которую крутят по поводу и без. Расчет здесь строится на том, что пользователь не сразу обнаружит обман и свою порцию баннеров гарантированно получит (гомеопатия в чистом виде). Такие программы вряд ли соответствуют рубрике «Кодинг», поэтому мы их пропускаем.

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

Public static void answerPhoneHeadsethook(Context context) { // «Нажимаем» и «отпускаем» кнопку на гарнитуре Intent buttonDown = new Intent(Intent.ACTION_MEDIA_BUTTON); buttonDown.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_HEADSETHOOK)); context.sendOrderedBroadcast(buttonDown, "android.permission.CALL_PRIVILEGED"); Intent buttonUp = new Intent(Intent.ACTION_MEDIA_BUTTON); buttonUp.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_HEADSETHOOK)); context.sendOrderedBroadcast(buttonUp, "android.permission.CALL_PRIVILEGED"); }

Оригинальным, но вполне рабочим может быть метод уменьшения громкости нежелательного звонка до нуля:

AudioManager audioManager = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE); int ringerMode = audioManager.getRingerMode(); audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);

Используя объект AudioManager , мы сначала получаем текущий звуковой профиль getRingerMode() , а потом устанавливаем бесшумный режим AudioManager.RINGER_MODE_SILENT .

После того как звонок прекратится (текущее состояние сменится на EXTRA_STATE_IDLE), восстанавливаем исходный режим:

AudioManager.setRingerMode(ringerMode);

Но даже в этом случае не обойтись без специальных разрешений:

Здесь мы не блокируем номер как таковой, скорее просто не поднимаем трубку, однако такой подход не требует никаких «выкрутасов».

Встречаются приложения, которые с переменным успехом пытаются получить доступ к кнопкам на экране входящего звонка, как, например, .

INFO

К рассматриваемому вопросу можно отнести задачу вывода информации поверх активности входящего звонка (как вариант - полная визуальная замена окна для маскировки), но из соображений безопасности Android не позволяет создавать собственные активности для этих целей. Тем не менее это не распространяется на системные окна. Любопытная по теме.

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


На этом можно было бы поставить жирную точку, если бы внезапно «корпорация добра» не сделала ход слоном.

Липкий список Google

В Android 7.0 Nougat (API 24) появился класс BlockedNumberContract - тот самый черный список, но уже не в виде компонента прошивки смартфона, а в качестве полноценного объекта ОС. Все звонки (а также СМС и электронные письма) от отправителей из этого списка будут автоматически отклонены системой.

BlockedNumberContract представляет собой стандартный контент-провайдер, работать с которым могут, во-первых, системные приложения, во-вторых, приложения для СМС и телефонии, заданные как приложения по умолчанию (Default App). Свойство «по умолчанию» должен установить сам пользователь - это одна из парадигм безопасности Android начиная с версии 4.4. Для телефонии указанное свойство наделяет код правом не только обрабатывать входящие и исходящие звонки, но и изменять базу данных (например, удалять отдельные звонки из логов). Поэтому, кстати, стоит очень настороженно относиться к тем приложениям, даже из Google Play, которые пытаются получить флаг «по умолчанию» и при этом имеют неограниченный доступ в интернет, - вероятность слива информации весьма высока.

Работа с BlockedNumberContract напоминает взаимодействие с базой данных: используются узнаваемые методы вставки, удаления и, разумеется, выборки записей.

Контент-провайдер - разделяемое постоянное хранилище (как правило, база данных SQLite), которое содержит информацию, относящуюся к приложению, и управляет ею. Предпочтительный способ обмена данными между различными программами.

Чтобы забанить номер телефона, вызываем стандартный метод getContentResolver().insert:

ContentValues values = new ContentValues(); values.put(BlockedNumbers.COLUMN_ORIGINAL_NUMBER, "1234567890"); Uri uri = getContentResolver().insert(BlockedNumbers.CONTENT_URI, values);

Несмотря на название, столбик COLUMN_ORIGINAL_NUMBER может содержать не только номер телефона, но и электронный адрес:

Values.put(BlockedNumbers.COLUMN_ORIGINAL_NUMBER, "[email protected]");

Удалить номер из бана так же просто:

ContentValues values = new ContentValues(); values.put(BlockedNumbers.COLUMN_ORIGINAL_NUMBER, "1234567890"); Uri uri = getContentResolver().insert(BlockedNumbers.CONTENT_URI, values); getContentResolver().delete(uri, null, null);

Для проверки, не внесен ли номер в черный список, предусмотрен метод isBlocked(Context, String) .

Наконец, чтобы получить всех отвергнутых одним махом:

Cursor c = getContentResolver().query(BlockedNumbers.CONTENT_URI, new String{BlockedNumbers.COLUMN_ID, BlockedNumbers.COLUMN_ORIGINAL_NUMBER, BlockedNumbers.COLUMN_E164_NUMBER}, null, null, null);

Таким образом, рассмотренные в предыдущем разделе трюки постепенно сойдут на нет. Другой вопрос, как быстро это случится. Доля Android 7 пока не превышает даже инженерной погрешности.


Перезваниваем

Позвонить в Android’е можно двумя принципиально разными способами. Первый, и самый простой, - вызвать стандартную активность, передав ей в качестве параметра номер для набора:

Intent call = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:8495-123-45-56")); startActivity(call);

Здесь используется инициирующее звонок намерение Intent.ACTION_DIAL , а номер передается в виде пути URI с обязательным указанием протокола tel. На экране смартфона пользователь увидит привычное окно с заведенным номером.


Стандартная активность для дозвона разрешает изменить номер непосредственно перед выполнением звонка, поэтому никаких разрешений в манифесте приложения не требуется.

Второй вариант - перехват намерений, которые обслуживаются стандартным приложением, и вызов своей активности. В этом случае отрисовка экранных цифровых кнопок и поиск по контактам (и это далеко не полный перечень) ложится на плечи программиста.

Кроме того, поскольку в этом случае требуется разрешение:

начиная с Android 4.4 приложение откажется работать, если оно не будет выбрано по умолчанию, а пользователь вряд ли просто так сменит знакомую «звонилку».


Как видишь, Google неплохо защитила свой телефонный компонент, и вредоносов, скрытно звонящих на короткие платные номера, в природе (пока еще?) не наблюдается.

Ода манифесту

Если ты внимательно читаешь рубрику «Кодинг», то наверняка заметил, что то или иное потенциально опасное действие в Android требует однозначного разрешения. Несмотря на имеющиеся уязвимости (когда в последний раз к тебе прилетали патчи?) в разных компонентах системы, в целом основным рассадником проблем оказывается сам пользователь. Разумеется, если ты заинтересуешь ЦРУ, никакой , но в обычной жизни необходимо крайне настороженно относиться ко всему устанавливаемому ПО, даже если оно родом из Google Play. Как думаешь, стоит ли ставить себе калькулятор, если он требует доступа в интернет и возможности отправлять СМС?

Заключение

Сегодня мы познакомились с одним из главных компонентов современного смартфона - телефонией (хотя, возможно, у интернет-мессенджеров другое мнение на этот счет). Как обычно, не все работает так, как хотелось бы, и свет в велосипедной мастерской еще долго не погаснет, но такая уж у программистов судьба. В любом случае «Хакер» будет держать тебя в курсе.

Поддержка стран:
Операционная система: Windows
Семейство: Универсальная Система Учета
Назначение: Автоматизация бизнеса

Управление звонками

Основные возможности программы:

Язык базовой версии программы: РУССКИЙ

Также Вы можете заказать международную версию программы, в которую сможете вносить информацию на ЛЮБОМ ЯЗЫКЕ мира. Даже интерфейс сможете легко перевести самостоятельно, так как все названия будут вынесены в отдельный текстовый файл.


Работа с клиентами была, есть и будет одной из самых важных разновидностей деятельности любой фирмы. Сотрудники, в чьи обязанности входит привлечение новых клиентов и мероприятия по удержанию существующих, обычно идут на многочисленные ухищрения и постоянно находят новые пути для достижения поставленной цели. Очень большую роль в информировании клиентов имеет телефония. Этот способ коммуникации имеет самый большой процент обратной связи. Кроме того, общение с помощью телефона позволяет решить больше вопросов, чем в той же переписке, так как обычно люди пишут письма куда менее охотно.

Управление звонками является очень важной частью работы с контрагентами. Грамотно реализованный процесс управления входящими звонками с использованием телефона позволит качественно систематизировать имеющуюся информацию с тем, чтобы на любой момент времени можно было сделать анализ деятельности каждого сотрудника, работающего с клиентами, а также выявить наиболее выгодные методы этой работы. Все это обеспечит повышение уровня качества оказываемых услуг и выпускаемой продукции.

Для того, чтобы сделать управление входящими звонками с использованием телефона автоматизированным, можно воспользоваться последними достижениями отрасли информационных технологий. Телефония и IT очень часто выступают в роли одного приложения для контроля звонков с использованием телефона и этот тандем показывает прекрасные результаты.

Программа управления звонками с использованием телефона позволяет не только контролировать работу сотрудников, но и освободить их от выполнения однообразных и нудных операций, оставив им только функцию контроля процесса. Освободившееся время можно использовать для решения иных вопросов, укладывающихся в перечень полномочий каждого сотрудника.

Иногда руководители организаций принимают решение о том, что им вполне подойдет бесплатная система управления звонками с использованием телефона. Считаем своим долгом предупредить тех, кто желает сэкономить свои средства: набирая в строке поискового сайта запрос на подобии «телефон управление звонками скачать бесплатно», вы можете получить множество проблем вплоть до утечки важной информации. Для того, чтобы софт, контролирующий управление звонками с помощью телефона, стал для вас надежным инструментом учета, необходимо сделать немного больше: провести мониторинг рынка технологий автоматизации деятельности и найти для себя самый приемлемый по стоимости вариант.

Хорошим примером качественного и сравнительно недорогого программного обеспечения для управления звонками с помощью телефона является Универсальная Система Учета (УСУ). Ее большие возможности наряду с простотой интерфейса и высоким уровнем качества технического обслуживания делают ее невероятно популярной на рынке специализированного ПО не только в Республике Казахстан, но и за ее пределами.

Приложение управления звонками с помощью телефона Универсальная Система Учета обладает спектром особенностей, которые позволяют назвать ее лучшим программным продуктом для управления звонками с помощью телефона.

Программой могут пользоваться:

Посмотрев следующее видео, можно быстро ознакомиться с возможностями программы УСУ - Универсальной Системы Учета. Если Вы не видите загруженное на YouTube видео, обязательно напишите нам, мы найдем другой способ показать демонстрационный ролик!

Возможности контроля и управления звонками

  • Демо-версия приложения управления звонками с помощью телефона УСУ находится на нашем сайте. С ее помощью вы сможете наглядно просмотреть возможности софта;
  • Приложение управления звонками с помощью телефона УСУ отличается простотой интерфейса и его удобством для пользователей любого уровня;
  • Наряду с простотой приложение контроля звонков УСУ отличается надежностью;
  • Оплата за приложение управления звонками с помощью телефона УСУ не предполагает абонентской платы;
  • Запускается приложение управления звонками УСУ очень просто - с помощью двойного клика по ярлыку;
  • Все учетные записи приложения управления звонками УСУ защищаются не только паролем, но и ролью, которая зависит от должностных обязанностей человека;
  • В качестве дополнительного способа создать определенный имидж своего предприятия, приложение управления звонками УСУ установит ваш логотип в системе;
  • Закладки открытых окон в приложении управления звонками УСУ позволят пользователю выполнять одновременно несколько операций, а также переходить от одного окна к другому одним кликом мыши;
  • В нижней части основного экрана Универсальной Системы Учета расположен таймер, который позволит контролировать время, использованное на выполнение операции;
  • Вся информация сохраняется в приложении управления звонками УСУ неограниченное время;
  • Приложение управления звонками УСУ разрешает работать пользователям по локальной сети компании или удаленно;
  • К каждой лицензии приложения управления звонками УСУ мы дарим по два часа технического обслуживания совершенно бесплатно;
  • Наши специалисты могут провести обучение ваших сотрудников работе в приложении управления звонками УСУ удаленно. Иные методы обучения оговариваются индивидуально;
  • Приложение управления звонками УСУ позволяет создать для вашего предприятия удобные в работе справочники, где будет указана вся информация о контрагенте, в том числе номер телефона;
  • Всплывающие окна приложения управления звонками УСУ при входящем вызове от клиента могут выводить на экран любую необходимую для работы с клиентами информацию;
  • Из всплывающего окна приложения управления звонками УСУ можно попасть в карту контрагента и ввести новый номер телефона для существующего в базе клиента или поставщика, или же ввести нового контрагента;
  • Видя информацию (имя, номер телефона, задолженность и т.п.) о клиенте во всплывающем окне приложения управления звонками УСУ, можно обратиться к клиенту по имени, что позволит ему почувствовать себя особенным и перенести это же отношение на вас;
  • Приложение управления звонками Универсальная Система Учета позволяет отправлять автоматическую рассылку голосовых сообщений. Они могут быть групповыми или индивидуальными;
  • Голосовые сообщения, рассылаемые клиентам при помощи софта для управления звонками Универсальная Система Учета, могут иметь разовый или систематический характер;
  • Приложение управления звонками Универсальная Система Учета позволит периодически делать автоматические или в ручном режиме (с помощью телефона) холодные звонки;
  • УСУ предоставляет уникальную возможность набирать номер контрагента напрямую из системы;
  • Программный продукт для управления звонками УСУ имеет возможность формировать наглядный отчет о входящих и исходящих звонках на каждый день или за период. В нем будет информация о входящем номере телефона и исходящем, а также внутренний телефон вашего сотрудника, принявшего или не принявшего вызов;
  • Результатом работы ваших менеджеров в нашем ПО для управления Универсальная Система Учета будет привлечение большего числа клиентов и формирование положительного имиджа о вас. Мы делаем все, чтобы ваша работа доставляла вам радость.

Список поддерживаемых АТС

Интеграция с программными АТС:
  • 3CX (интеграция возможна только при использовании софтфона для Windows)
  • Asterisk 1.8, 11, 13 (только SIP каналы)
  • Elastix 2.x, 4.x (только SIP каналы)
  • FreePBX 2, 12, 13 (только SIP каналы)
  • Infinity call-центр (интеграция возможна только при использовании софтфона для Windows)
  • Центр обработки вызовов «Линия24» (используется АТС-коннектор Asterisk 1.8)
  • Другие программные АТС, использующие SIP протокол (интеграция возможна только при использовании софтфона для Windows)

Интеграция с облачными (виртуальными) АТС:
  • alltel24 (для подключения обратитесь в компанию alltel24.ru)
  • MANGO OFFICE (нужна услуга «Подключение по API» в личном кабинете MANGO OFFICE)
  • Uiscom (нужна услуга «HTTP уведомления» и «Call API» в Uiscom)
  • Zadarma
  • Youmagic, МТТ (интеграция возможна только при использовании софтфона для Windows)
  • баZа Офис (интеграция возможна только при использовании софтфона для Windows)
  • Билайн Бизнес (нужна услуга «Облачная АТС»)
  • Дом.ру (интеграция возможна только при использовании софтфона для Windows)
  • Зебра Телеком (интеграция возможна только при использовании софтфона для Windows)
  • Ростелеком (интеграция возможна только при использовании софтфона для Windows)
  • Телфин.Офис (для подключения обратитесь в компанию Телфин)
  • Мегафон (интеграция возможна только при использовании софтфона для Windows)
  • Другие облачные АТС (интеграция возможна только при использовании софтфона для Windows)

Интеграция с офисными АТС:
  • Avaya IP Office 500 + лицензия CTI Link Pro + лицензия VoiceMail Pro для аудиозаписи
  • LG-Ericsson ipLDK 100/300/600 + лицензия на TAPI драйвер
  • LG-Ericsson iPECS eMG80/MG/LIK/CM + лицензия на TAPI драйвер
  • LG-Ericsson Aria SOHO + плата AR-LANU для подключения к локальной сети + лицензия на TAPI драйвер
  • Panasonic KX-TDA 30/100/200/300/600
  • Panasonic KX-TDE 100/200/600
  • Panasonic KX-NCP 500/1000
  • Panasonic KX-NS 500/1000 + CTI лицензия KX-NSF101 или KX-NSA020 (смотрите руководство администратора АТС Panasonic)
  • Yeastar MyPBX (интеграция возможна только при использовании софтфона для Windows)
  • Агат UX 5110/5111/3410/3730/3710 + лицензия на TAPI драйвер
  • Другие офисные АТС, использующие SIP протокол (интеграция возможна только при использовании софтфона для Windows)