Share via


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> 데이터 </h3>

차단된 번호 공급자는 일반 전화 번호 외에 사용자가 메시지 및 통화를 받을 수 있는 주소(예: 이메일)를 저장할 수도 있습니다. 차단된 숫자는 열에 BlockedNumbers#COLUMN_ORIGINAL_NUMBER 저장됩니다. 정규화된 버전의 전화 번호(정규화가 가능한 경우)가 열에 BlockedNumbers#COLUMN_E164_NUMBER 저장됩니다. 플랫폼은 열에 있거나 E164 버전의 주소가 BlockedNumbers#COLUMN_ORIGINAL_NUMBER 열과 일치하는 BlockedNumbers#COLUMN_E164_NUMBER 경우 주소의 호출 및 메시지를 차단합니다.

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

BlockedNumbers#COLUMN_ORIGINAL_NUMBER 는 채워야 하는 필수 열입니다. 앱은 필요에 따라 전화 번호의 E164 표현인 을 제공할 BlockedNumbers#COLUMN_E164_NUMBER 수 있습니다. 앱에서 이 열을 제공하지 않으면 공급자가 이 열을 자동으로 채웁니다. 정규화에 실패하거나 주소가 전화 번호가 아닌 경우(예: 이메일) 이 열이 채워지지 않습니다.

기존 차단된 번호(동일한 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>Unblock</b></dt><dd>

메서드 #unblock(Context, String) 를 사용하여 숫자 차단을 해제합니다.

</Dd>

<h3> 다중 사용자 </h3>

앱은 차단된 숫자 공급자에서 작업을 수행하기 전에 메서드 #canCurrentUserBlockNumbers(Context) 를 사용해야 합니다. 가 를 반환false하면 #canCurrentUserBlockNumbers(Context) 공급자의 모든 작업이 와 함께 SecurityException실패합니다. 플랫폼은 호출을 차단하고 현재 사용자와 독립적으로 공급자의 숫자에서 메시지를 차단합니다.

에 대한 Java 설명서입니다 android.provider.BlockedNumberContract.

이 페이지의 일부는 만들고 공유하며 에 설명된 조건에 따라 사용되는 작업을 기반으로 수정됩니다.

생성자

BlockedNumberContract(IntPtr, JniHandleOwnership)

blockednumber 공급자와 애플리케이션 간의 계약입니다.

필드

Authority

차단된 번호 공급자에 대한 권한

속성

AuthorityUri

차단된 숫자 공급자에 대한 권한에 대한 content:// 스타일 URI

Class

Object의 런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
Handle

기본 Android instance 대한 핸들입니다.

(다음에서 상속됨 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()

현재 스레드가 깨어날 때까지 대기하게 합니다( 일반적으로 <알림을 받><거나 <>중단/>em>)합니다<.

(다음에서 상속됨 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 공급자와 애플리케이션 간의 계약입니다.

적용 대상