تماس با مشتری کلیدی


public interface ContactKeyClient extends HasApiKey


یک کلاینت برای API کلید تماس.

خلاصه

روش‌های عمومی

abstract @ NonNull Flow <@ NonNull List <@ NonNull E2eeAccountContactKeyParcelable >>
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
getAccountContactKeysFlow (@ NonNull List <@ NonNull String > accountIds)

جریانی از به‌روزرسانی‌های کلیدهای تماس حساب را برمی‌گرداند.

abstract @ NonNull Task <@ NonNull E2eeContactKeyListParcelable >
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
getAllE2eeContactKeys (@ NonNull String lookupKey)

تمام ورودی‌های کلید تماس رمزگذاری سرتاسری که متعلق به برنامه‌های قابل مشاهده برای تماس‌گیرنده هستند را بازیابی می‌کند.

abstract @ NonNull Task <@ NonNull E2eeSelfKeyListParcelable >
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
getAllE2eeSelfKeys ()

تمام ورودی‌های کلید شخصی رمزگذاری سرتاسری که متعلق به برنامه‌های قابل مشاهده برای تماس‌گیرنده هستند را برمی‌گرداند.

abstract @ NonNull Task <@ NonNull ImmutableList <@ NonNull E2eeAccountContactKeyParcelable >>
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
getAllOwnerE2eeAccountContactKeys ()

تمام کلیدهای تماس حساب رمزگذاری سرتاسری که متعلق به برنامه تماس‌گیرنده هستند را بازیابی می‌کند، چه با یک مخاطب مرتبط باشند چه نباشند.

abstract @ NonNull Task <@ NonNull E2eeContactKeyListParcelable >
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
getAllOwnerE2eeContactKeys ()

تمام کلیدهای رمزگذاری سرتاسری مخاطبین متعلق به برنامه تماس‌گیرنده را در تمام مخاطبین بازیابی می‌کند.

abstract @ NonNull Task <@ NonNull ImmutableList <@ NonNull E2eeAccountContactKeyParcelable >>
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
getE2eeAccountKeysForAccount (@ NonNull String accountId)

تمام ورودی‌های کلید تماس رمزگذاری سرتاسری متعلق به برنامه تماس‌گیرنده و حساب تماس‌گیرنده را در تمام مخاطبین بازیابی می‌کند.

abstract @ NonNull Task < E2eeContactKeyParcelable >
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
getE2eeContactKey (
@ NonNull String lookupKey,
@ NonNull String deviceId,
@ NonNull String accountId
)

با توجه به lookupKey ، deviceId ، accountId و نام بسته تماس گیرنده استنباط شده، یک ورودی کلید تماس رمزگذاری سرتاسری را بازیابی می‌کند.

abstract @ NonNull Task < E2eeSelfKeyParcelable >
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
getE2eeSelfKey (@ NonNull String deviceId, @ NonNull String accountId)

با توجه به deviceId ، accountId و نام بسته‌ی استنباط‌شده‌ی فراخوانی‌کننده، یک ورودی self-key رمزگذاری سرتاسری را برمی‌گرداند.

abstract @ NonNull Task <@ NonNull Integer >

حداکثر اندازه مجاز یک کلید را بر حسب بایت برمی‌گرداند.

abstract @ NonNull Task <@ NonNull PendingIntent >
getOnboardingIntent (
@ NonNull OnboardingNextActivity nextActivity,
String lookupKey,
String packageName
)

یک intent برای نمایش فعالیت Onboarding برمی‌گرداند و نشان می‌دهد که Onboarding در این دستگاه نمایش داده شده است.

abstract @ NonNull Task <@ NonNull E2eeContactKeyListParcelable >
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
getOwnerE2eeContactKeys (@ NonNull String lookupKey)

تمام ورودی‌های کلید تماس رمزگذاری سرتاسری را برای یک lookupKey داده شده که متعلق به برنامه تماس‌گیرنده است، بازیابی می‌کند.

abstract @ NonNull Task <@ NonNull E2eeSelfKeyListParcelable >
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
getOwnerE2eeSelfKeys ()

تمام ورودی‌های کلید شخصی رمزگذاری سرتاسری که متعلق به برنامه تماس‌گیرنده هستند را برمی‌گرداند.

abstract @ NonNull Task <@ NonNull PendingIntent >
getScanQrCodeIntent (@ NonNull String lookupKey, boolean skipOnboarding)

یک intent به فعالیت "اسکن کد QR" برمی‌گرداند.

abstract @ NonNull Task <@ NonNull PendingIntent >

یک اینتنت را به فعالیت "اسکن کد QR" برای یک حساب کاربری خاص برمی‌گرداند.

abstract @ NonNull Task <@ NonNull PendingIntent >
getShowQrCodeIntent ( String packageName, boolean skipOnboarding)

یک intent به فعالیت "نمایش کد QR" برمی گرداند.

abstract @ NonNull Task <@ NonNull Boolean >

وظیفه‌ای را برمی‌گرداند که با موفقیت انجام می‌شود، چه API در دسترس باشد و چه نباشد.

abstract @ NonNull Task <@ NonNull Void >
@ RequiresPermission (value = "android.permission.READ_CONTACTS")
registerAccountContactKeysListener (
@ NonNull List <@ NonNull String > accountIds,
@ NonNull OnAccountContactKeysUpdatedListener listener
)

یک شنونده برای به‌روزرسانی کلیدهای تماس حساب ثبت می‌کند.

abstract @ NonNull Task <@ NonNull Void >
@ RequiresPermission (value = "android.permission.WRITE_CONTACTS")
removeE2eeAccountContactKey (
@ NonNull String deviceId,
@ NonNull String accountId
)

ورودی کلید تماس حساب رمزگذاری سرتاسری که متعلق به برنامه تماس‌گیرنده است را حذف می‌کند.

abstract @ NonNull Task <@ NonNull Void >
@ RequiresPermission (value = "android.permission.WRITE_CONTACTS")
removeE2eeContactKey (
@ NonNull String lookupKey,
@ NonNull String deviceId,
@ NonNull String accountId
)

یک ورودی کلید تماس رمزگذاری سرتاسری که متعلق به برنامه تماس‌گیرنده است را حذف می‌کند.

abstract @ NonNull Task <@ NonNull Void >
@ RequiresPermission (value = "android.permission.WRITE_CONTACTS")
removeE2eeSelfKey (@ NonNull String deviceId, @ NonNull String accountId)

با توجه به شناسه دستگاه و نام بسته استنباطیِ فراخوانی‌کننده، ورودی کلید شخصیِ رمزگذاری سرتاسری را حذف می‌کند.

abstract @ NonNull Task <@ NonNull Boolean >

یک شنونده را برای به‌روزرسانی کلیدهای تماس حساب، لغو ثبت‌نام می‌کند.

abstract @ NonNull Task <@ NonNull Void >
@ RequiresPermission (allOf = ["android.permission.READ_CONTACTS", "android.permission.WRITE_CONTACTS"])
updateAllE2eeAccountKeys (
@ NonNull List <@ NonNull E2eeAccountKeyInfo > accountKeyInfos
)

دسته‌ای از کلیدهای تماس حساب را درج می‌کند.

abstract @ NonNull Task <@ NonNull Void >
@ RequiresPermission (allOf = ["android.permission.READ_CONTACTS", "android.permission.WRITE_CONTACTS"])
updateOrInsertE2eeContactKey (
@ NonNull String lookupKey,
@ NonNull String deviceId,
@ NonNull String accountId,
@ NonNull byte[] keyValue
)

یک ورودی جدید را در جدول کلیدهای تماس رمزگذاری سرتاسری وارد می‌کند یا اگر از قبل وجود داشته باشد، آن را به‌روزرسانی می‌کند.

abstract @ NonNull Task <@ NonNull Void >
@ RequiresPermission (allOf = ["android.permission.READ_CONTACTS", "android.permission.WRITE_CONTACTS"])
updateOrInsertE2eeContactKey (
@ NonNull List <@ NonNull String > lookupKeys,
@ NonNull String deviceId,
@ NonNull String accountId,
@ NonNull byte[] keyValue
)

یک ورودی جدید را در جدول کلیدهای تماس رمزگذاری سرتاسری وارد می‌کند یا اگر از قبل وجود داشته باشد، آن را به‌روزرسانی می‌کند.

abstract @ NonNull Task <@ NonNull Void >
@ RequiresPermission (value = "android.permission.WRITE_CONTACTS")
updateOrInsertE2eeSelfKey (
@ NonNull String deviceId,
@ NonNull String accountId,
@ NonNull byte[] keyValue
)

یک ورودی جدید در جدول کلیدهای رمزنگاری سرتاسری وارد می‌کند یا اگر از قبل وجود داشته باشد، آن را به‌روزرسانی می‌کند.

روش‌های عمومی

دریافت حساب کاربری تماس با کلیدها جریان

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Flow<@NonNull List<@NonNull E2eeAccountContactKeyParcelable>> getAccountContactKeysFlow(@NonNull List<@NonNull String> accountIds)

جریانی از به‌روزرسانی‌های کلیدهای تماس حساب را برمی‌گرداند.

این جریان زمانی منتشر می‌شود که هر کلیدی برای هر accountId ارائه شده به‌روزرسانی، اضافه یا حذف شود. این جریان لیستی از تمام کلیدهای accountIdهای ارائه شده را منتشر می‌کند، نه فقط آن‌هایی که به‌روزرسانی شده‌اند.

پارامترها
@ NonNull List <@ NonNull String > accountIds

فهرست شناسه‌های حساب‌هایی که باید منتظر به‌روزرسانی‌هایشان باشید.

بازگشت‌ها
@ NonNull Flow <@ NonNull List <@ NonNull E2eeAccountContactKeyParcelable >>

جریانی که لیست‌های E2eeAccountContactKeyParcelable را برای accountIds ارائه شده، هر زمان که هر کلیدی به‌روزرسانی، اضافه یا حذف شود، منتشر می‌کند.

پرتاب‌ها
com.google.android.libraries.sdkcoroutines.flow.CallbackChannelFullException

اگر رویدادهای فراخوانی خیلی کند پردازش شوند.

کلیدهای تماس همه E2ee را دریافت کنید

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Task<@NonNull E2eeContactKeyListParcelablegetAllE2eeContactKeys(@NonNull String lookupKey)

تمام ورودی‌های کلید تماس رمزگذاری سرتاسری که متعلق به برنامه‌های قابل مشاهده برای تماس‌گیرنده هستند را بازیابی می‌کند. داده‌های deviceId ، timeUpdated و keyValue از کلیدها حذف می‌شوند.

پارامترها
@ NonNull String lookupKey

مقداری که به مخاطب اشاره دارد

بازگشت‌ها
@ NonNull Task <@ NonNull E2eeContactKeyListParcelable >

یک E2eeContactKeyListParcelable حاوی لیستی از اطلاعات کلید تماس رمزگذاری سرتاسری، یا یک لیست خالی در صورت عدم یافتن کلید.

کلیدهای خود را به همه E2ee تبدیل کنید

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Task<@NonNull E2eeSelfKeyListParcelablegetAllE2eeSelfKeys()

تمام ورودی‌های کلید شخصی رمزگذاری سرتاسری که متعلق به برنامه‌های قابل مشاهده برای فراخوانی‌کننده هستند را برمی‌گرداند. داده‌های deviceId ، timeUpdated و keyValue از کلیدها حذف می‌شوند.

بازگشت‌ها
@ NonNull Task <@ NonNull E2eeSelfKeyListParcelable >

یک E2eeSelfKeyListParcelable حاوی لیستی از اطلاعات کلید خود رمزگذاری سرتاسری، یا یک لیست خالی در صورت عدم یافتن کلیدهای خود.

getAllOwnerE2eeAccountContact Keys

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Task<@NonNull ImmutableList<@NonNull E2eeAccountContactKeyParcelable>> getAllOwnerE2eeAccountContactKeys()

تمام کلیدهای تماس حساب رمزگذاری سرتاسری که متعلق به برنامه تماس‌گیرنده هستند را بازیابی می‌کند، چه با یک مخاطب مرتبط باشند چه نباشند.

بازگشت‌ها
@ NonNull Task <@ NonNull ImmutableList <@ NonNull E2eeAccountContactKeyParcelable >>

فهرستی از اشیاء E2eeAccountContactKeyParcelable که حاوی اطلاعات کلید تماس رمزگذاری سرتاسری هستند، یا یک فهرست خالی در صورتی که هیچ کلیدی یافت نشود.

کلیدهای تماس با مالک (getAllOwnerE2eeContactKeys)

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Task<@NonNull E2eeContactKeyListParcelablegetAllOwnerE2eeContactKeys()

تمام کلیدهای رمزگذاری سرتاسری مخاطبین متعلق به برنامه تماس‌گیرنده را در تمام مخاطبین بازیابی می‌کند.

این متد باید فقط برای بازیابی کلیدهایی استفاده شود که حداقل یک مخاطب به آنها مرتبط است. اگر نیاز به بازیابی کلیدهایی دارید که به هیچ مخاطبی مرتبط نیستند، به جای آن getAllOwnerE2eeAccountContactKeys استفاده کنید.

بازگشت‌ها
@ NonNull Task <@ NonNull E2eeContactKeyListParcelable >

یک E2eeContactKeyListParcelable حاوی لیستی از اطلاعات کلید تماس رمزگذاری سرتاسری، یا یک لیست خالی در صورت عدم یافتن کلید.

کلید حساب getE2ee برای حساب

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Task<@NonNull ImmutableList<@NonNull E2eeAccountContactKeyParcelable>> getE2eeAccountKeysForAccount(@NonNull String accountId)

تمام ورودی‌های کلید تماس رمزگذاری سرتاسری متعلق به برنامه تماس‌گیرنده و حساب تماس‌گیرنده را در تمام مخاطبین بازیابی می‌کند. شامل کلیدهایی است که به هیچ مخاطبی مرتبط نیستند.

بازگشت‌ها
@ NonNull Task <@ NonNull ImmutableList <@ NonNull E2eeAccountContactKeyParcelable >>

فهرستی از اشیاء E2eeAccountContactKeyParcelable که حاوی اطلاعات کلید تماس رمزگذاری سرتاسری هستند، یا یک فهرست خالی در صورتی که هیچ کلیدی یافت نشود.

کلید تماس getE2ee

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Task<E2eeContactKeyParcelablegetE2eeContactKey(
    @NonNull String lookupKey,
    @NonNull String deviceId,
    @NonNull String accountId
)

با توجه به lookupKey ، deviceId ، accountId و نام بسته تماس گیرنده استنباط شده، یک ورودی کلید تماس رمزگذاری سرتاسری را بازیابی می‌کند.

پارامترها
@ NonNull String lookupKey

مقداری که به مخاطب اشاره دارد

@ NonNull String deviceId

شناسه مشخص شده توسط برنامه برای دستگاه

@ NonNull String accountId

شناسه مشخص شده توسط برنامه برای حساب

بازگشت‌ها
@ NonNull Task < E2eeContactKeyParcelable >

یک E2eeContactKeyParcelable حاوی اطلاعات کلید تماس، یا اگر هیچ کلید تماسی یافت نشد، null.

کلید خود را دریافت کنید

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Task<E2eeSelfKeyParcelablegetE2eeSelfKey(@NonNull String deviceId, @NonNull String accountId)

با توجه به deviceId ، accountId و نام بسته‌ی استنباط‌شده‌ی فراخوانی‌کننده، یک ورودی self-key رمزگذاری سرتاسری را برمی‌گرداند.

پارامترها
@ NonNull String deviceId

شناسه مشخص شده توسط برنامه برای دستگاه

@ NonNull String accountId

شناسه مشخص شده توسط برنامه برای حساب

بازگشت‌ها
@ NonNull Task < E2eeSelfKeyParcelable >

یک E2eeSelfKeyParcelable حاوی اطلاعات کلید خود رمزگذاری سرتاسری، یا اگر هیچ کلید خودی یافت نشد، null.

دریافت حداکثر اندازه کلید بایت‌ها

abstract @NonNull Task<@NonNull IntegergetMaxKeySizeBytes()

حداکثر اندازه مجاز یک کلید را بر حسب بایت برمی‌گرداند.

قصد ورود به سیستم

abstract @NonNull Task<@NonNull PendingIntentgetOnboardingIntent(
    @NonNull OnboardingNextActivity nextActivity,
    String lookupKey,
    String packageName
)

یک intent برای نمایش فعالیت Onboarding برمی‌گرداند و نشان می‌دهد که Onboarding در این دستگاه نمایش داده شده است. این به یک nextActivity نیاز دارد که می‌تواند رشته show یا scan باشد. اگر scan ، lookupKey مخاطبی که باید اسکن شود، مورد نیاز است.

پارامترها
@ NonNull OnboardingNextActivity nextActivity

فعالیت بعدی که پس از فعالیت معرفی و آموزش (Onboarding) نمایش داده می‌شود. باید یا show باشد یا scan .

String lookupKey

مقداری که به مخاطب اشاره می‌کند. در صورتی که nextActivity برابر scan باشد، الزامی است.

String packageName

نام بسته‌ی مرتبط با برنامه‌ای که کلیدهای آن مورد نیاز است (اختیاری).

کلیدهای تماس getOwnerE2ee

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Task<@NonNull E2eeContactKeyListParcelablegetOwnerE2eeContactKeys(@NonNull String lookupKey)

تمام ورودی‌های کلید تماس رمزگذاری سرتاسری را برای یک lookupKey داده شده که متعلق به برنامه تماس‌گیرنده است، بازیابی می‌کند.

پارامترها
@ NonNull String lookupKey

مقداری که به مخاطب اشاره دارد

بازگشت‌ها
@ NonNull Task <@ NonNull E2eeContactKeyListParcelable >

یک E2eeContactKeyListParcelable حاوی لیستی از اطلاعات کلید تماس رمزگذاری سرتاسری، یا یک لیست خالی در صورت عدم یافتن کلید.

کلیدهای خود را به مالک دریافت کنید

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Task<@NonNull E2eeSelfKeyListParcelablegetOwnerE2eeSelfKeys()

تمام ورودی‌های کلید شخصی رمزگذاری سرتاسری که متعلق به برنامه تماس‌گیرنده هستند را برمی‌گرداند.

بازگشت‌ها
@ NonNull Task <@ NonNull E2eeSelfKeyListParcelable >

یک E2eeSelfKeyListParcelable حاوی اطلاعات کلید خود رمزگذاری سرتاسری، یا یک لیست خالی در صورت عدم یافتن کلید خود.

هدف از اسکن کد (QrCode)

abstract @NonNull Task<@NonNull PendingIntentgetScanQrCodeIntent(@NonNull String lookupKey, boolean skipOnboarding)

یک intent به فعالیت "اسکن کد QR" برمی‌گرداند.

پارامترها
@ NonNull String lookupKey

مقداری که به مخاطب اشاره دارد

boolean skipOnboarding

فعلاً بلااستفاده.

getScanQrCodeIntentForAccount

abstract @NonNull Task<@NonNull PendingIntentgetScanQrCodeIntentForAccount(
    @NonNull String packageName,
    @NonNull String accountId
)

یک اینتنت را به فعالیت "اسکن کد QR" برای یک حساب کاربری خاص برمی‌گرداند.

پارامترها
@ NonNull String packageName

نام بسته مرتبط با حسابی که کاربر می‌خواهد تأیید کند

@ NonNull String accountId

شناسه حساب مرتبط با حسابی که کاربر می‌خواهد تأیید کند

getShowQrCodeIntent

abstract @NonNull Task<@NonNull PendingIntentgetShowQrCodeIntent(String packageName, boolean skipOnboarding)

یک intent به فعالیت "نمایش کد QR" برمی گرداند.

پارامترها
String packageName

نام بسته‌ی مرتبط با برنامه‌ای که کلیدهایش مورد نیاز است (اختیاری)

boolean skipOnboarding

فعلاً بلااستفاده.

فعال شده است

abstract @NonNull Task<@NonNull BooleanisEnabled()

وظیفه‌ای را برمی‌گرداند که با موفقیت انجام می‌شود، چه API در دسترس باشد و چه نباشد.

اگر API در دسترس باشد، وظیفه‌ی برگردانده شده نتیجه‌ی true و در غیر این صورت false خواهد داشت.

استثنائاتی که معمولاً هنگام عدم دسترسی به API رخ می‌دهند، گرفته می‌شوند و وظیفه‌ای که با موفقیت مقدار false را برمی‌گرداند، به جای آن بازگردانده می‌شود.

ثبت نامحساب تماسکلیدهای شنونده

@RequiresPermission(value = "android.permission.READ_CONTACTS")
abstract @NonNull Task<@NonNull VoidregisterAccountContactKeysListener(
    @NonNull List<@NonNull String> accountIds,
    @NonNull OnAccountContactKeysUpdatedListener listener
)

یک شنونده برای به‌روزرسانی کلیدهای تماس حساب ثبت می‌کند.

شنونده (listener) زمانی فراخوانی می‌شود که هر کلیدی برای هر accountId ارائه شده به‌روزرسانی، اضافه یا حذف شود. این شنونده با لیستی از تمام کلیدهای accountIdهای ارائه شده فراخوانی می‌شود، نه فقط آن‌هایی که به‌روزرسانی شده‌اند.

پارامترها
@ NonNull List <@ NonNull String > accountIds

فهرست شناسه‌های حساب‌هایی که شنونده باید برای آنها ثبت نام کند.

@ NonNull OnAccountContactKeysUpdatedListener listener

شنونده ثبت نام کند.

کلید تماس حساب کاربری را حذف کنید

@RequiresPermission(value = "android.permission.WRITE_CONTACTS")
abstract @NonNull Task<@NonNull VoidremoveE2eeAccountContactKey(
    @NonNull String deviceId,
    @NonNull String accountId
)

ورودی کلید تماس حساب رمزگذاری سرتاسری که متعلق به برنامه تماس‌گیرنده است را حذف می‌کند.

پارامترها
@ NonNull String deviceId

شناسه مشخص شده توسط برنامه برای دستگاه

@ NonNull String accountId

شناسه مشخص شده توسط برنامه برای حساب

کلید تماس E2ee را حذف کنید

@RequiresPermission(value = "android.permission.WRITE_CONTACTS")
abstract @NonNull Task<@NonNull VoidremoveE2eeContactKey(
    @NonNull String lookupKey,
    @NonNull String deviceId,
    @NonNull String accountId
)

یک ورودی کلید تماس رمزگذاری سرتاسری که متعلق به برنامه تماس‌گیرنده است را حذف می‌کند.

پارامترها
@ NonNull String lookupKey

مقداری که به مخاطب اشاره دارد

@ NonNull String deviceId

شناسه مشخص شده توسط برنامه برای دستگاه

@ NonNull String accountId

شناسه مشخص شده توسط برنامه برای حساب

حذف کلید خودE2ee

@RequiresPermission(value = "android.permission.WRITE_CONTACTS")
abstract @NonNull Task<@NonNull VoidremoveE2eeSelfKey(@NonNull String deviceId, @NonNull String accountId)

با توجه به شناسه دستگاه و نام بسته استنباطیِ فراخوانی‌کننده، ورودی کلید شخصیِ رمزگذاری سرتاسری را حذف می‌کند.

پارامترها
@ NonNull String deviceId

شناسه مشخص شده توسط برنامه برای دستگاه

@ NonNull String accountId

شناسه مشخص شده توسط برنامه برای حساب

لغو ثبت نامحساب تماسکلیدهای شنونده

@CanIgnoreReturnValue
abstract @NonNull Task<@NonNull BooleanunregisterAccountContactKeysListener(
    @NonNull OnAccountContactKeysUpdatedListener listener
)

یک شنونده را برای به‌روزرسانی کلیدهای تماس حساب، لغو ثبت‌نام می‌کند.

پارامترها
@ NonNull OnAccountContactKeysUpdatedListener listener

شنونده لغو ثبت نام کند.

به‌روزرسانی کلیدهای حساب کاربری همهE2ee

@RequiresPermission(allOf = ["android.permission.READ_CONTACTS", "android.permission.WRITE_CONTACTS"])
abstract @NonNull Task<@NonNull VoidupdateAllE2eeAccountKeys(
    @NonNull List<@NonNull E2eeAccountKeyInfo> accountKeyInfos
)

دسته‌ای از کلیدهای تماس حساب را درج می‌کند.

مشابه updateOrInsertE2eeContactKey رفتار می‌کند، اما امکان درج/به‌روزرسانی چندین کلید را به‌طور همزمان فراهم می‌کند. هر کلید در تراکنش مخصوص به خود درج می‌شود، بنابراین برخی از کلیدها حتی اگر وظیفه (task) یک استثنا ایجاد کند، ممکن است درج شوند.

کلاینت‌ها می‌توانند با ارسال مجدد کل دسته، خرابی‌های موقت را مدیریت کنند، زیرا این API بر وضعیت کلیدهای از قبل وارد شده تأثیری نخواهد گذاشت.

برای هر کلید، اگر یک کلید جستجو (lookupKey) ارائه شده باشد اما اطلاعات اولیه مخاطب (displayName، phoneNumber، emailAddress) ارائه نشده باشد، این API همچنین تلاش می‌کند نام، شماره تلفن و آدرس ایمیل مخاطب را از Contacts Provider بازیابی کند. هنگام بازیابی کلید، برنامه‌های مدیریت تماس باید از این اطلاعات استفاده کنند تا مطمئن شوند که کلید فقط برای مخاطبی که برای آن در نظر گرفته شده است، استفاده می‌شود.

برنامه تأیید کلید اندروید این اطلاعات را روی دستگاه ذخیره می‌کند و فقط آن را در اختیار فراخوانی‌کنندگان API قرار می‌دهد که مجوز READ_CONTACTS را دارند.

اگر هیچ کلید جستجویی برای یک کلید ارائه نشده باشد، این API کلیدی را ذخیره می‌کند که به هیچ مخاطبی مرتبط نیست.

پارامترها
@ NonNull List <@ NonNull E2eeAccountKeyInfo > accountKeyInfos

فهرست اشیاء E2eeAccountKeyInfo که حاوی اطلاعات کلید تماس رمزگذاری سرتاسری هستند.

کلید تماس E2ee را به‌روزرسانی یا درج کنید

@RequiresPermission(allOf = ["android.permission.READ_CONTACTS", "android.permission.WRITE_CONTACTS"])
abstract @NonNull Task<@NonNull VoidupdateOrInsertE2eeContactKey(
    @NonNull String lookupKey,
    @NonNull String deviceId,
    @NonNull String accountId,
    @NonNull byte[] keyValue
)

یک ورودی جدید به جدول کلیدهای تماس رمزگذاری سرتاسری وارد می‌کند یا اگر از قبل وجود داشته باشد، آن را به‌روزرسانی می‌کند. کلید تماس رمزگذاری سرتاسری وارد شده/به‌روزرسانی شده متعلق به برنامه تماس‌گیرنده است.

این API همچنین نام، شماره تلفن و آدرس ایمیل مخاطب را از ارائه‌دهنده مخاطبین، در کنار کلید ذخیره می‌کند. هنگام بازیابی کلید، برنامه‌های مدیریت تماس باید از این اطلاعات استفاده کنند تا مطمئن شوند که کلید فقط برای مخاطبی که برای آن در نظر گرفته شده است، استفاده می‌شود.

برنامه تأیید کلید اندروید این اطلاعات را روی دستگاه ذخیره می‌کند و فقط آن را در اختیار فراخوانی‌کنندگان API قرار می‌دهد که مجوز READ_CONTACTS را دارند.

پارامترها
@ NonNull String lookupKey

مقداری که به مخاطب اشاره می‌کند

@ NonNull String deviceId

شناسه مشخص شده توسط برنامه برای دستگاه

@ NonNull String accountId

شناسه مشخص شده توسط برنامه برای حساب

@ NonNull byte[] keyValue

بایت‌های خام برای کلید (حداکثر اندازه، getMaxKeySizeBytes بایت است)

کلید تماس E2ee را به‌روزرسانی یا درج کنید

@RequiresPermission(allOf = ["android.permission.READ_CONTACTS", "android.permission.WRITE_CONTACTS"])
abstract @NonNull Task<@NonNull VoidupdateOrInsertE2eeContactKey(
    @NonNull List<@NonNull String> lookupKeys,
    @NonNull String deviceId,
    @NonNull String accountId,
    @NonNull byte[] keyValue
)

یک ورودی جدید به جدول کلیدهای تماس رمزگذاری سرتاسری وارد می‌کند یا اگر از قبل وجود داشته باشد، آن را به‌روزرسانی می‌کند. کلید تماس رمزگذاری سرتاسری وارد شده/به‌روزرسانی شده متعلق به برنامه تماس‌گیرنده است.

برای هر کلید جستجوی ارائه شده، این API نام، شماره تلفن و آدرس ایمیل مخاطب را از ارائه دهنده مخاطبین، در کنار کلید ذخیره می‌کند. هنگام بازیابی کلید، برنامه‌های مدیریت تماس باید از این اطلاعات استفاده کنند تا مطمئن شوند که کلید فقط برای مخاطبی که برای آن در نظر گرفته شده است، استفاده می‌شود.

برنامه تأیید کلید اندروید این اطلاعات را روی دستگاه ذخیره می‌کند و فقط آن را در اختیار فراخوانی‌کنندگان API قرار می‌دهد که مجوز READ_CONTACTS را دارند.

اگر لیست کلیدهای جستجو خالی باشد، این API کلیدی را ذخیره می‌کند که به هیچ مخاطبی مرتبط نیست.

فراخوانی این API با یک یا چند کلید جستجو، فراداده‌های کلید را به‌روزرسانی می‌کند تا آن را با مخاطبین ارائه شده مرتبط کند، اما هیچ ارتباط موجودی را برای مخاطبینی که در لیست ارائه نشده‌اند، حذف نمی‌کند. برای حذف ارتباط بین یک مخاطب و یک کلید، تابع removeE2eeContactKey با کلید جستجوی مناسب فراخوانی کنید.

پارامترها
@ NonNull List <@ NonNull String > lookupKeys

فهرستی احتمالاً خالی از کلیدهای جستجوی CP2 که به مخاطبینی که کلید با آنها مرتبط است اشاره دارند

@ NonNull String deviceId

شناسه مشخص شده توسط برنامه برای دستگاه

@ NonNull String accountId

شناسه مشخص شده توسط برنامه برای حساب

@ NonNull byte[] keyValue

بایت‌های خام برای کلید (حداکثر اندازه، getMaxKeySizeBytes بایت است)

کلید خود را به‌روزرسانی یا درج کنیدE2ee

@RequiresPermission(value = "android.permission.WRITE_CONTACTS")
abstract @NonNull Task<@NonNull VoidupdateOrInsertE2eeSelfKey(
    @NonNull String deviceId,
    @NonNull String accountId,
    @NonNull byte[] keyValue
)

یک ورودی جدید در جدول کلیدهای رمزنگاری سرتاسری وارد می‌کند یا اگر از قبل وجود داشته باشد، آن را به‌روزرسانی می‌کند.

پارامترها
@ NonNull String deviceId

شناسه مشخص شده توسط برنامه برای دستگاه

@ NonNull String accountId

شناسه مشخص شده توسط برنامه برای حساب

@ NonNull byte[] keyValue

بایت‌های خام برای کلید (حداکثر اندازه، getMaxKeySizeBytes بایت است)