BlockedNumberContract 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
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
- 상속
- 특성
설명
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 |
이 |
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) |
차단된 경우 을 |
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 공급자와 애플리케이션 간의 계약입니다. |