用户数据配置文件

本指南描述了如何保存、更新和管理用户数据,例如输入到网络表单中的名字、地址、电子邮件等。

概述

Chromium 有一个内置功能,可以记住输入到网络表单中的用户数据。 当用户提交包含此数据的 网络表单时,库将询问是否将其保存到用户数据存储中。

如果你保存它,下次你加载表单时,库会建议你自动填写它。

Web Form Autofill User Data

在这种情况下必须启用网络表单自动填充功能。

要访问和管理所有已保存的用户数据,请使用 UserDataProfiles:

UserDataProfiles userDataProfiles = profile.userDataProfiles();
val userDataProfiles = profile.userDataProfiles()

保存用户数据

当用户提交包含城市、街道、邮政编码、电子邮件地址、电话号码等用户数据的表单时,库将询问您是否要通过 SaveUserDataProfileCallback 保存此数据。 在回调中,会提示您保存或拒绝保存用户数据。 例如:

browser.set(SaveUserDataProfileCallback.class, (params, tell) -> tell.save());
browser.set(SaveUserDataProfileCallback::class.java,
    SaveUserDataProfileCallback { params, tell -> tell.save() }
)

如果您选择保存,则此用户数据将添加到用户数据存储中。 下次您在表单中输入相同的用户数据时,将不会调用回调。

如果您选择拒绝保存用户数据,那么它不会被添加到存储中,并且下次输入完全相同的用户数据时将再次调用回调。

更新用户数据

当用户提交带有更新用户数据的网络表单时,库将会要求您通过 UpdateUserDataProfileCallback 在用户数据存储中更新它。 在此回调中将提示您更新或拒绝更新 UserDataProfiles 中的用户数据。 例如:

browser.set(UpdateUserDataProfileCallback.class, (params, tell) -> tell.update());
browser.set(UpdateUserDataProfileCallback::class.java,
    UpdateUserDataProfileCallback { params, tell -> tell.update() }
)

管理用户数据

用户数据存储中的每条记录都由一个单独的 UserDataProfile 对象表示。它包含城市、州、街道、邮政编码、电子邮件地址、全名等。

想要读取所有记录,请使用:

userDataProfiles.all().forEach(userDataProfile -> {
    String email = userDataProfile.email();
    String city = userDataProfile.address().city();
});
userDataProfiles.all().forEach { userDataProfile -> 
    val email = userDataProfile.email()
    val city = userDataProfile.address().city()
}

想要从存储中删除任何记录,请使用:

userDataProfiles.remove(userDataProfile);
userDataProfiles.remove(userDataProfile)

想要清除整个用户数据存储,请使用:

userDataProfiles.clear();
userDataProfiles.clear()
Go Top