BlockedNumberContract Класс

Определение

Контракт между поставщиком blockednumber и приложениями.

[Android.Runtime.Register("android/provider/BlockedNumberContract", ApiSince=24, DoNotGenerateAcw=true)]
public class BlockedNumberContract : Java.Lang.Object
[<Android.Runtime.Register("android/provider/BlockedNumberContract", ApiSince=24, DoNotGenerateAcw=true)>]
type BlockedNumberContract = class
    inherit Object
Наследование
BlockedNumberContract
Атрибуты

Комментарии

Контракт между поставщиком blockednumber и приложениями. Содержит определения для поддерживаемых URI и столбцов.

<Обзор <h3> /h3>

Поставщик содержимого предоставляет таблицу, содержащую заблокированные номера. Столбцы и URI для доступа к этой таблице определяются классом BlockedNumbers . Сообщения и звонки с заблокированных номеров отклоняются платформой. Уведомления об изменениях поставщика можно получать с помощью android.database.ContentObserver.

Платформа не будет блокировать сообщения и звонки с номеров экстренных служб, как определено в android.telephony.PhoneNumberUtils#isEmergencyNumber(String). Если пользователь обращается к экстренным службам, блокировка номеров отключается платформой на время, определенное параметром android.telephony.CarrierConfigManager#KEY_DURATION_BLOCKING_DISABLED_AFTER_EMERGENCY_INT.

<Разрешения <h3> /h3>

Только система, SMS-приложение по умолчанию и телефонное приложение по умолчанию (см. android.telecom.TelecomManager#getDefaultDialerPackage()) и приложения оператора связи (см. android.service.carrier.CarrierService) могут читать и записывать данные поставщику blockednumber. #canCurrentUserBlockNumbers(Context) Однако доступ к ней может осуществляться любым приложением.

<h3> Data </h3>

Помимо обычных телефонных номеров, поставщик заблокированных номеров также может хранить адреса (например, электронную почту), с которых пользователь может получать сообщения и звонки. Заблокированные номера хранятся в столбце BlockedNumbers#COLUMN_ORIGINAL_NUMBER . Нормализованная версия телефонных номеров (если нормализация возможна) хранится в столбце BlockedNumbers#COLUMN_E164_NUMBER . Платформа блокирует вызовы и сообщения с адреса, если он присутствует в столбце BlockedNumbers#COLUMN_ORIGINAL_NUMBER или если версия адреса E164 совпадает со столбцом BlockedNumbers#COLUMN_E164_NUMBER .

<h3> Operations </h3><dl><dt><b>Insert</b></dt><dd>

BlockedNumbers#COLUMN_ORIGINAL_NUMBER — обязательный столбец, который необходимо заполнить. При необходимости приложения могут предоставить BlockedNumbers#COLUMN_E164_NUMBER , который является представлением номера телефона E164. Поставщик автоматически заполняет этот столбец, если приложение не предоставляет его. Обратите внимание, что этот столбец не заполняется в случае сбоя нормализации или если адрес не является номером телефона (например, адресом электронной почты).

Попытка вставить существующий заблокированный номер (тот же BlockedNumbers#COLUMN_ORIGINAL_NUMBER столбец) приведет к замене существующего заблокированного номера.

Примеры:

ContentValues values = new ContentValues();
            values.put(BlockedNumbers.COLUMN_ORIGINAL_NUMBER, "1234567890");
            Uri uri = getContentResolver().insert(BlockedNumbers.CONTENT_URI, values);
ContentValues values = new ContentValues();
            values.put(BlockedNumbers.COLUMN_ORIGINAL_NUMBER, "1234567890");
            values.put(BlockedNumbers.COLUMN_E164_NUMBER, "+11234567890");
            Uri uri = getContentResolver().insert(BlockedNumbers.CONTENT_URI, values);
ContentValues values = new ContentValues();
            values.put(BlockedNumbers.COLUMN_ORIGINAL_NUMBER, "12345@abdcde.com");
            Uri uri = getContentResolver().insert(BlockedNumbers.CONTENT_URI, values);

</p></dd><dt><b>Update</b></dt><dd>

Обновления не поддерживаются. Вместо этого используйте команду Удалить и Вставить.

</dd><dt><b>Delete</b></dt><dd>

Удаление можно выполнить следующим образом:

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). </p></dd><dt><b>Query</b></dt><dd>

Все заблокированные номера можно перечислить следующим образом:

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

</p></dd><dt><b>Разблокировать</b></dt><dd>

Используйте метод #unblock(Context, String) для разблокировки чисел.

</Dd>

<h3> Multi-user </h3>

Приложения должны использовать метод #canCurrentUserBlockNumbers(Context) перед выполнением каких-либо операций с заблокированным поставщиком номеров. Если #canCurrentUserBlockNumbers(Context) возвращает значение false, все операции с поставщиком завершатся ошибкой SecurityException. Платформа будет блокировать звонки и сообщения с номеров в поставщике независимо от текущего пользователя.

Документация по Java для android.provider.BlockedNumberContract.

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.

Конструкторы

BlockedNumberContract(IntPtr, JniHandleOwnership)

Контракт между поставщиком blockednumber и приложениями.

Поля

Authority

Полномочия для заблокированного поставщика номеров

Свойства

AuthorityUri

Универсальный код ресурса (URI) стиля content:// для центра для заблокированного поставщика номеров.

Class

Возвращает класс среды выполнения данного объекта Object.

(Унаследовано от Object)
Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
JniPeerMembers

Контракт между поставщиком blockednumber и приложениями.

PeerReference

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
ThresholdClass

Контракт между поставщиком blockednumber и приложениями.

ThresholdType

Контракт между поставщиком blockednumber и приложениями.

Методы

CanCurrentUserBlockNumbers(Context)

Проверяет, поддерживается ли блокировка номеров для текущего пользователя.

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
Dispose()

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
Dispose(Boolean)

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
Equals(Object)

Указывает, равен ли какой-то другой объект этому объекту.

(Унаследовано от Object)
GetHashCode()

Возвращает значение хэш-кода для объекта.

(Унаследовано от Object)
IsBlocked(Context, String)

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

JavaFinalize()

Вызывается сборщиком мусора для объекта , когда сборка мусора определяет, что больше нет ссылок на объект .

(Унаследовано от Object)
Notify()

Пробуждает один поток, ожидающий монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Пробуждает все потоки, ожидающие на мониторе этого объекта.

(Унаследовано от Object)
SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
ToArray<T>()

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
Unblock(Context, String)

Разблокирует , phoneNumber если он заблокирован.

UnregisterFromRuntime()

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
Wait()

Вызывает ожидание текущего потока, пока он не пробудится, как правило, из-за <уведомления><<> или>прерывания или прерывания.><

(Унаследовано от Object)
Wait(Int64)

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

(Унаследовано от Object)
Wait(Int64, Int32)

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

(Унаследовано от Object)

Явные реализации интерфейса

IJavaPeerable.Disposed()

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
IJavaPeerable.DisposeUnlessReferenced()

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
IJavaPeerable.Finalized()

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
IJavaPeerable.JniManagedPeerState

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Контракт между поставщиком blockednumber и приложениями.

(Унаследовано от Object)

Методы расширения

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверенного средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Контракт между поставщиком blockednumber и приложениями.

GetJniTypeName(IJavaPeerable)

Контракт между поставщиком blockednumber и приложениями.

Применяется к