ContactKeyClient


public interface ContactKeyClient extends HasApiKey


Klien untuk Contact Key API.

Ringkasan

Metode publik

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

Menampilkan alur pembaruan kunci kontak akun.

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

Mengambil semua entri kunci kontak enkripsi end-to-end yang termasuk dalam aplikasi yang terlihat oleh pemanggil.

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

Menampilkan semua entri kunci mandiri enkripsi menyeluruh milik aplikasi yang terlihat oleh pemanggil.

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

Mengambil semua kunci kontak akun enkripsi end-to-end yang dimiliki aplikasi pemanggil, baik yang terkait dengan kontak maupun tidak.

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

Mengambil semua kunci kontak enkripsi end-to-end yang dimiliki aplikasi pemanggil, di semua kontak.

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

Mengambil semua entri kunci kontak enkripsi end-to-end yang dimiliki aplikasi pemanggil dan akun pemanggil, di semua kontak.

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

Mengambil entri kunci kontak enkripsi end-to-end yang diberikan lookupKey, deviceId, accountId, dan nama paket pemanggil yang disimpulkan.

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

Menampilkan entri kunci mandiri enkripsi end-to-end yang diberikan deviceId, accountId, dan nama paket pemanggil yang disimpulkan.

abstract @NonNull Task<@NonNull Integer>

Menampilkan ukuran maksimum yang diizinkan untuk kunci dalam byte.

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

Menampilkan intent untuk menampilkan aktivitas Orientasi, dan menandai bahwa Orientasi telah ditampilkan di perangkat ini.

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

Mengambil semua entri kunci kontak enkripsi end-to-end untuk lookupKey tertentu yang termasuk dalam aplikasi pemanggil.

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

Menampilkan semua entri kunci mandiri enkripsi end-to-end yang dimiliki oleh aplikasi pemanggil.

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

Menampilkan intent ke aktivitas "Pindai Kode QR".

abstract @NonNull Task<@NonNull PendingIntent>
getScanQrCodeIntentForAccount(
    @NonNull String packageName,
    @NonNull String accountId
)

Menampilkan intent ke aktivitas "Pindai Kode QR" untuk akun tertentu.

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

Menampilkan intent ke aktivitas "Tampilkan Kode QR".

abstract @NonNull Task<@NonNull Boolean>

Menampilkan Tugas yang berhasil diselesaikan, baik API tersedia maupun tidak.

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

Mendaftarkan pemroses untuk pembaruan kunci kontak akun.

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

Menghapus entri kunci kontak akun enkripsi end-to-end milik aplikasi pemanggil.

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

Menghapus entri kunci kontak enkripsi menyeluruh yang dimiliki aplikasi pemanggil.

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

Menghapus entri kunci mandiri enkripsi end-to-end yang diberikan deviceId dan nama paket pemanggil yang disimpulkan.

abstract @NonNull Task<@NonNull Boolean>

Membatalkan pendaftaran pemroses untuk pembaruan kunci kontak akun.

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

Menyisipkan batch kunci kontak akun.

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
)

Menyisipkan entri baru ke dalam tabel kunci kontak enkripsi end-to-end atau memperbarui entri jika sudah ada.

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
)

Menyisipkan entri baru ke dalam tabel kunci kontak enkripsi end-to-end atau memperbarui entri jika sudah ada.

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

Menyisipkan entri baru ke dalam tabel kunci mandiri enkripsi end-to-end atau memperbarui entri jika sudah ada.

Metode publik

getAccountContactKeysFlow

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

Menampilkan alur pembaruan kunci kontak akun.

Alur akan dipancarkan saat kunci apa pun untuk accountId yang diberikan diperbarui, ditambahkan, atau dihapus. Tindakan ini akan memancarkan daftar semua kunci untuk accountId yang diberikan, bukan hanya kunci yang diperbarui.

Parameter
@NonNull List<@NonNull String> accountIds

daftar ID akun yang akan dipantau untuk mengetahui pembaruan.

Hasil
@NonNull Flow<@NonNull List<@NonNull E2eeAccountContactKeyParcelable>>

alur yang memancarkan daftar E2eeAccountContactKeyParcelable untuk accountId yang diberikan setiap kali kunci diperbarui, ditambahkan, atau dihapus.

Menampilkan
com.google.android.libraries.sdkcoroutines.flow.CallbackChannelFullException

jika peristiwa callback diproses terlalu lambat.

getAllE2eeContactKeys

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

Mengambil semua entri kunci kontak enkripsi end-to-end yang termasuk dalam aplikasi yang terlihat oleh pemanggil. Kunci akan dihapus dari data deviceId, timeUpdated, dan keyValue.

Parameter
@NonNull String lookupKey

nilai yang mereferensikan kontak

Hasil
@NonNull Task<@NonNull E2eeContactKeyListParcelable>

E2eeContactKeyListParcelable yang berisi daftar informasi kunci kontak enkripsi end-to-end, atau daftar kosong jika tidak ada kunci yang ditemukan.

getAllE2eeSelfKeys

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

Menampilkan semua entri kunci mandiri enkripsi menyeluruh milik aplikasi yang terlihat oleh pemanggil. Kunci akan dihapus dari data deviceId, timeUpdated, dan keyValue.

Hasil
@NonNull Task<@NonNull E2eeSelfKeyListParcelable>

E2eeSelfKeyListParcelable yang berisi daftar informasi kunci mandiri enkripsi end-to-end, atau daftar kosong jika tidak ada kunci mandiri yang ditemukan.

getAllOwnerE2eeAccountContactKeys

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

Mengambil semua kunci kontak akun enkripsi end-to-end yang dimiliki aplikasi pemanggil, baik yang terkait dengan kontak maupun tidak.

Hasil
@NonNull Task<@NonNull ImmutableList<@NonNull E2eeAccountContactKeyParcelable>>

daftar objek E2eeAccountContactKeyParcelable yang berisi informasi kunci kontak enkripsi end-to-end, atau daftar kosong jika tidak ada kunci yang ditemukan.

getAllOwnerE2eeContactKeys

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

Mengambil semua kunci kontak enkripsi end-to-end yang dimiliki aplikasi pemanggil, di semua kontak.

Metode ini hanya boleh digunakan untuk mengambil kunci yang memiliki setidaknya satu kontak terkait. Jika Anda perlu mengambil kunci yang tidak terkait dengan kontak mana pun, gunakan getAllOwnerE2eeAccountContactKeys.

Hasil
@NonNull Task<@NonNull E2eeContactKeyListParcelable>

E2eeContactKeyListParcelable yang berisi daftar informasi kunci kontak enkripsi end-to-end, atau daftar kosong jika tidak ada kunci yang ditemukan.

getE2eeAccountKeysForAccount

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

Mengambil semua entri kunci kontak enkripsi end-to-end yang dimiliki aplikasi pemanggil dan akun pemanggil, di semua kontak. Mencakup kunci yang tidak dikaitkan dengan kontak mana pun.

Hasil
@NonNull Task<@NonNull ImmutableList<@NonNull E2eeAccountContactKeyParcelable>>

daftar objek E2eeAccountContactKeyParcelable yang berisi informasi kunci kontak enkripsi end-to-end, atau daftar kosong jika tidak ada kunci yang ditemukan.

getE2eeContactKey

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

Mengambil entri kunci kontak enkripsi end-to-end yang diberikan lookupKey, deviceId, accountId, dan nama paket pemanggil yang disimpulkan.

Parameter
@NonNull String lookupKey

nilai yang mereferensikan kontak

@NonNull String deviceId

ID yang ditentukan aplikasi untuk perangkat

@NonNull String accountId

ID yang ditentukan aplikasi untuk akun

Hasil
@NonNull Task<E2eeContactKeyParcelable>

E2eeContactKeyParcelable yang berisi informasi kunci kontak, atau null jika tidak ada kunci kontak yang ditemukan.

getE2eeSelfKey

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

Menampilkan entri kunci mandiri enkripsi end-to-end yang diberikan deviceId, accountId, dan nama paket pemanggil yang disimpulkan.

Parameter
@NonNull String deviceId

ID yang ditentukan aplikasi untuk perangkat

@NonNull String accountId

ID yang ditentukan aplikasi untuk akun

Hasil
@NonNull Task<E2eeSelfKeyParcelable>

E2eeSelfKeyParcelable yang berisi informasi kunci mandiri enkripsi end-to-end, atau null jika tidak ada kunci mandiri yang ditemukan.

getMaxKeySizeBytes

abstract @NonNull Task<@NonNull IntegergetMaxKeySizeBytes()

Menampilkan ukuran maksimum yang diizinkan untuk kunci dalam byte.

getOnboardingIntent

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

Menampilkan intent untuk menampilkan aktivitas Orientasi, dan menandai bahwa Orientasi telah ditampilkan di perangkat ini. Hal ini memerlukan nextActivity, yang dapat berupa string show atau scan. Jika scan, lookupKey kontak yang akan dipindai harus ada.

Parameter
@NonNull OnboardingNextActivity nextActivity

aktivitas berikutnya yang akan ditampilkan setelah aktivitas Onboarding. Harus berupa show atau scan.

String lookupKey

nilai yang mereferensikan kontak. Wajib jika nextActivity adalah scan.

String packageName

nama paket yang terkait dengan aplikasi yang kuncinya diperlukan (opsional).

getOwnerE2eeContactKeys

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

Mengambil semua entri kunci kontak enkripsi end-to-end untuk lookupKey tertentu yang termasuk dalam aplikasi pemanggil.

Parameter
@NonNull String lookupKey

nilai yang mereferensikan kontak

Hasil
@NonNull Task<@NonNull E2eeContactKeyListParcelable>

E2eeContactKeyListParcelable yang berisi daftar informasi kunci kontak enkripsi end-to-end, atau daftar kosong jika tidak ada kunci yang ditemukan.

getOwnerE2eeSelfKeys

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

Menampilkan semua entri kunci mandiri enkripsi end-to-end yang dimiliki oleh aplikasi pemanggil.

Hasil
@NonNull Task<@NonNull E2eeSelfKeyListParcelable>

E2eeSelfKeyListParcelable yang berisi informasi kunci mandiri enkripsi end-to-end, atau daftar kosong jika tidak ada kunci mandiri yang ditemukan.

getScanQrCodeIntent

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

Menampilkan intent ke aktivitas "Pindai Kode QR".

Parameter
@NonNull String lookupKey

nilai yang mereferensikan kontak

boolean skipOnboarding

Saat ini tidak digunakan.

getScanQrCodeIntentForAccount

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

Menampilkan intent ke aktivitas "Pindai Kode QR" untuk akun tertentu.

Parameter
@NonNull String packageName

nama paket yang terkait dengan akun yang ingin diverifikasi pengguna

@NonNull String accountId

ID akun yang terkait dengan akun yang ingin diverifikasi pengguna

getShowQrCodeIntent

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

Menampilkan intent ke aktivitas "Tampilkan Kode QR".

Parameter
String packageName

nama paket yang terkait dengan aplikasi yang kuncinya diperlukan (opsional)

boolean skipOnboarding

Saat ini tidak digunakan.

isEnabled

abstract @NonNull Task<@NonNull BooleanisEnabled()

Menampilkan Tugas yang berhasil diselesaikan, baik API tersedia maupun tidak.

Jika API tersedia, tugas yang ditampilkan akan memiliki hasil benar, dan salah jika tidak.

Pengecualian yang biasanya muncul saat API tidak tersedia akan ditangkap dan tugas yang berhasil menampilkan nilai salah akan ditampilkan sebagai gantinya.

registerAccountContactKeysListener

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

Mendaftarkan pemroses untuk pembaruan kunci kontak akun.

Pemroses akan dipanggil saat kunci apa pun untuk accountId yang diberikan diperbarui, ditambahkan, atau dihapus. Fungsi ini akan dipanggil dengan daftar semua kunci untuk accountId yang diberikan, bukan hanya kunci yang diperbarui.

Parameter
@NonNull List<@NonNull String> accountIds

daftar ID akun untuk mendaftarkan pemroses.

@NonNull OnAccountContactKeysUpdatedListener listener

pemroses yang akan didaftarkan.

removeE2eeAccountContactKey

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

Menghapus entri kunci kontak akun enkripsi end-to-end milik aplikasi pemanggil.

Parameter
@NonNull String deviceId

ID yang ditentukan aplikasi untuk perangkat

@NonNull String accountId

ID yang ditentukan aplikasi untuk akun

removeE2eeContactKey

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

Menghapus entri kunci kontak enkripsi menyeluruh yang dimiliki aplikasi pemanggil.

Parameter
@NonNull String lookupKey

nilai yang mereferensikan kontak

@NonNull String deviceId

ID yang ditentukan aplikasi untuk perangkat

@NonNull String accountId

ID yang ditentukan aplikasi untuk akun

removeE2eeSelfKey

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

Menghapus entri kunci mandiri enkripsi end-to-end yang diberikan deviceId dan nama paket pemanggil yang disimpulkan.

Parameter
@NonNull String deviceId

ID yang ditentukan aplikasi untuk perangkat

@NonNull String accountId

ID yang ditentukan aplikasi untuk akun

unregisterAccountContactKeysListener

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

Membatalkan pendaftaran pemroses untuk pembaruan kunci kontak akun.

Parameter
@NonNull OnAccountContactKeysUpdatedListener listener

pemroses yang akan dibatalkan pendaftarannya.

updateAllE2eeAccountKeys

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

Menyisipkan batch kunci kontak akun.

Berperilaku serupa dengan updateOrInsertE2eeContactKey, tetapi memungkinkan beberapa kunci disisipkan/diperbarui sekaligus. Setiap kunci dimasukkan dalam transaksinya sendiri, sehingga beberapa kunci dapat dimasukkan meskipun tugas memunculkan pengecualian.

Klien dapat memilih untuk menangani kegagalan sementara dengan mengirim ulang seluruh batch, karena API ini tidak akan memengaruhi status kunci yang sudah dimasukkan.

Untuk setiap kunci, jika lookupKey diberikan tetapi info dasar kontak (displayName, phoneNumber, emailAddress) tidak diberikan, API ini juga akan mencoba mengambil nama, nomor telepon, dan alamat email kontak dari Penyedia Kontak. Saat mengambil kunci, aplikasi pengelolaan kontak harus menggunakan informasi ini untuk memastikan bahwa kunci hanya digunakan untuk kontak yang ditujukan untuknya.

Aplikasi Verifikasi Kunci Android menyimpan informasi ini di perangkat dan hanya menunjukkannya kepada pemanggil API yang memiliki izin READ_CONTACTS.

Jika tidak ada lookupKey yang diberikan untuk kunci, API ini akan menyimpan kunci yang tidak terikat ke kontak mana pun.

Parameter
@NonNull List<@NonNull E2eeAccountKeyInfo> accountKeyInfos

daftar objek E2eeAccountKeyInfo yang berisi informasi kunci kontak enkripsi end-to-end.

updateOrInsertE2eeContactKey

@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
)

Menyisipkan entri baru ke dalam tabel kunci kontak enkripsi end-to-end atau memperbarui entri jika sudah ada. Kunci kontak enkripsi end-to-end yang disisipkan/diperbarui dimiliki oleh aplikasi pemanggil.

API ini juga akan menyimpan nama, nomor telepon, dan alamat email kontak dari Penyedia Kontak, beserta kuncinya. Saat mengambil kunci, aplikasi pengelolaan kontak harus menggunakan informasi ini untuk memastikan bahwa kunci hanya digunakan untuk kontak yang ditujukan untuknya.

Aplikasi Verifikasi Kunci Android menyimpan informasi ini di perangkat dan hanya menunjukkannya kepada pemanggil API yang memiliki izin READ_CONTACTS.

Parameter
@NonNull String lookupKey

nilai yang mereferensikan kontak

@NonNull String deviceId

ID yang ditentukan aplikasi untuk perangkat

@NonNull String accountId

ID yang ditentukan aplikasi untuk akun

@NonNull byte[] keyValue

byte mentah untuk kunci (ukuran maksimum adalah getMaxKeySizeBytes byte)

updateOrInsertE2eeContactKey

@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
)

Menyisipkan entri baru ke dalam tabel kunci kontak enkripsi end-to-end atau memperbarui entri jika sudah ada. Kunci kontak enkripsi end-to-end yang disisipkan/diperbarui dimiliki oleh aplikasi pemanggil.

Untuk setiap kunci penelusuran yang diberikan, API ini juga akan menyimpan nama, nomor telepon, dan alamat email kontak dari Penyedia Kontak, beserta kuncinya. Saat mengambil kunci, aplikasi pengelolaan kontak harus menggunakan informasi ini untuk memastikan bahwa kunci hanya digunakan untuk kontak yang ditujukan untuknya.

Aplikasi Verifikasi Kunci Android menyimpan informasi ini di perangkat dan hanya menunjukkannya kepada pemanggil API yang memiliki izin READ_CONTACTS.

Jika daftar kunci penelusuran kosong, API ini akan menyimpan kunci yang tidak terkait dengan kontak mana pun.

Memanggil API ini dengan satu atau beberapa kunci penelusuran akan memperbarui metadata kunci untuk mengaitkannya dengan kontak yang diberikan, tetapi tidak akan menghapus pengaitan yang ada untuk kontak yang tidak diberikan dalam daftar. Untuk menghapus atribusi antara kontak dan kunci, panggil removeE2eeContactKey dengan kunci penelusuran yang sesuai.

Parameter
@NonNull List<@NonNull String> lookupKeys

daftar kunci penelusuran CP2 yang berpotensi kosong yang mereferensikan kontak yang terkait dengan kunci

@NonNull String deviceId

ID yang ditentukan aplikasi untuk perangkat

@NonNull String accountId

ID yang ditentukan aplikasi untuk akun

@NonNull byte[] keyValue

byte mentah untuk kunci (ukuran maksimum adalah getMaxKeySizeBytes byte)

updateOrInsertE2eeSelfKey

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

Menyisipkan entri baru ke dalam tabel kunci mandiri enkripsi end-to-end atau memperbarui entri jika sudah ada.

Parameter
@NonNull String deviceId

ID yang ditentukan aplikasi untuk perangkat

@NonNull String accountId

ID yang ditentukan aplikasi untuk akun

@NonNull byte[] keyValue

byte mentah untuk kunci (ukuran maksimum adalah getMaxKeySizeBytes byte)