Я хочу блокировать вызовы из нескольких номеров, потому что я хочу написать собственное приложение.
Итак, какие API-интерфейсы я должен использовать?
В основном я хочу получать уведомления, когда приходит вызов, я хочу сравнивать числа, если это то, что я хочу заблокировать, я хочу вырезать вызов или отключить его или, если возможно, отключить его и записать.
Ответ 1
OMG!!! ДА, МЫ МОЖЕМ СДЕЛАТЬ ЭТО!!!
Я собирался убить себя после суровых 24 часов расследования и обнаружения... Но я нашел "новое" решение!
// "cheat" with Java reflection to gain access to TelephonyManager's
// ITelephony getter
Class c = Class.forName(tm.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony");
m.setAccessible(true);
telephonyService = (ITelephony)m.invoke(tm);
всем всем сотням людей, которые хотят разработать свое программное обеспечение для управления вызовами, посетите эту начальную точку
есть проект. и есть важные комментарии (и кредиты)
кратко: скопировать файл помощи, добавить разрешения для манифеста, скопировать-вставить источник для управления телефонией)))
Дополнительная информация для вас. AT-команды, которые вы можете отправить, только если вы укоренились. Чем вы можете убить системный процесс и отправить команды, но вам потребуется перезагрузка, чтобы ваш телефон мог принимать и отправлять вызовы =)))
Я очень hapy =) Теперь мой Shake2MuteCall получит обновление!
Ответ 2
На данный момент Миссия невыполнима.
См. Почему невозможно перехватить входящие звонки на Android для получения подробной информации.
Ответ 3
Это возможно, и вам не нужно его кодировать самостоятельно.
Просто установите громкость звонка на ноль и вибрацию на none, если входящий номер равен пустой строке. Вот оно...
Это просто сделано для вас с помощью приложения Nostalk из Android Market. Просто попробуй...
Ответ 4
Вы можете просто перенаправить конкретные номера в свои контакты на свою голосовую почту. Это уже поддерживается.
В противном случае я думаю, что документация для "Контакты" была бы хорошим местом для начала поиска.
Ответ 5
Как UPDATE в android-N, эта функция включена в нее.
Посетите Number-blocking
Android N теперь поддерживает блокирование номеров на платформе и обеспечивает API инфраструктуры, чтобы поставщики услуг поддерживали список заблокированных номеров. Приложение SMS по умолчанию, приложение телефона по умолчанию и приложения-поставщики могут читать от и записать в список заблокированных номеров. Список недоступен в другое приложение.
Преимущество заключается в следующем:
- Номера, заблокированные при звонках, также блокируются в тексте
- Заблокированные номера могут сохраняться при сбросах и устройствах через
Резервное копирование и восстановление
- Несколько приложений могут использовать один и тот же список заблокированных номеров
Для получения дополнительной информации см. android.provider.BlockedNumberContract
в Справочник API.
Обновить существующий проект.
Чтобы скомпилировать приложение на платформе Android N, вам нужно использовать Java 8 Developer Kit (JDK 8), а для использования некоторых инструментов с Android Studio 2.1, вам необходимо установить Java 8 Runtime Environment (JRE 8).
Откройте файл build.gradle для вашего модуля и обновите значения следующим образом:
android {
compileSdkVersion 'android-N'
buildToolsVersion 24.0.0 rc1
...
defaultConfig {
minSdkVersion 'N'
targetSdkVersion 'N'
...
}
...
}