Builder
class Builder
kotlin.Any | |
↳ | android.app.appsearch.GetSchemaResponse.Builder |
Builder for GetSchemaResponse
objects.
Summary
Public constructors | |
---|---|
Builder() Create a |
Public methods | |
---|---|
GetSchemaResponse.Builder |
addSchema(schema: AppSearchSchema) Adds one |
GetSchemaResponse.Builder |
addSchemaTypeNotDisplayedBySystem(schemaType: String) Sets whether or not documents from the provided |
GetSchemaResponse |
build() Builds a |
GetSchemaResponse.Builder |
setRequiredPermissionsForSchemaTypeVisibility(schemaType: String, visibleToPermissions: MutableSet<MutableSet<Int!>!>) Sets a set of required |
GetSchemaResponse.Builder |
setSchemaTypeVisibleToPackages(schemaType: String, packageIdentifiers: MutableSet<PackageIdentifier!>) Sets whether or not documents from the provided |
GetSchemaResponse.Builder |
setVersion(version: Int) Sets the database overall schema version. |
Public constructors
Public methods
addSchema
fun addSchema(schema: AppSearchSchema): GetSchemaResponse.Builder
Adds one AppSearchSchema
to the schema list.
Parameters | |
---|---|
schema |
AppSearchSchema: This value cannot be null . |
Return | |
---|---|
GetSchemaResponse.Builder |
This value cannot be null . |
addSchemaTypeNotDisplayedBySystem
fun addSchemaTypeNotDisplayedBySystem(schemaType: String): GetSchemaResponse.Builder
Sets whether or not documents from the provided schemaType
will be displayed and visible on any system UI surface.
Parameters | |
---|---|
schemaType |
String: The name of an AppSearchSchema within the same GetSchemaResponse , which won't be displayed by system. This value cannot be null . |
Return | |
---|---|
GetSchemaResponse.Builder |
This value cannot be null . |
build
fun build(): GetSchemaResponse
Builds a GetSchemaResponse
object.
Return | |
---|---|
GetSchemaResponse |
This value cannot be null . |
setRequiredPermissionsForSchemaTypeVisibility
fun setRequiredPermissionsForSchemaTypeVisibility(
schemaType: String,
visibleToPermissions: MutableSet<MutableSet<Int!>!>
): GetSchemaResponse.Builder
Sets a set of required android.Manifest.permission
combinations to the given schema type.
The querier could read the GenericDocument
objects under the schemaType
if they hold ALL required permissions of ANY of the individual value sets.
For example, if the Map contains {{permissionA, PermissionB}, {PermissionC, PermissionD}, {PermissionE}}
.
- A querier holds both PermissionA and PermissionB has access.
- A querier holds both PermissionC and PermissionD has access.
- A querier holds only PermissionE has access.
- A querier holds both PermissionA and PermissionE has access.
- A querier holds only PermissionA doesn't have access.
- A querier holds both PermissionA and PermissionC doesn't have access.
Parameters | |
---|---|
schemaType |
String: The schema type to set visibility on. This value cannot be null . |
visibleToPermissions |
MutableSet<MutableSet<Int!>!>: The Android permissions that will be required to access the given schema. Value is android.app.appsearch.SetSchemaRequest#READ_SMS , android.app.appsearch.SetSchemaRequest#READ_CALENDAR , android.app.appsearch.SetSchemaRequest#READ_CONTACTS , android.app.appsearch.SetSchemaRequest#READ_EXTERNAL_STORAGE , android.app.appsearch.SetSchemaRequest#READ_HOME_APP_SEARCH_DATA , android.app.appsearch.SetSchemaRequest#READ_ASSISTANT_APP_SEARCH_DATA , android.app.appsearch.SetSchemaRequest.ENTERPRISE_ACCESS, or android.app.appsearch.SetSchemaRequest.ENTERPRISE_CONTACTS_DEVICE_POLICY This value cannot be null . |
Return | |
---|---|
GetSchemaResponse.Builder |
This value cannot be null . |
setSchemaTypeVisibleToPackages
fun setSchemaTypeVisibleToPackages(
schemaType: String,
packageIdentifiers: MutableSet<PackageIdentifier!>
): GetSchemaResponse.Builder
Sets whether or not documents from the provided schemaType
can be read by the specified package.
Each package is represented by a PackageIdentifier
, containing a package name and a byte array of type android.content.pm.PackageManager#CERT_INPUT_SHA256
.
To opt into one-way data sharing with another application, the developer will need to explicitly grant the other application’s package name and certificate Read access to its data.
For two-way data sharing, both applications need to explicitly grant Read access to one another.
Parameters | |
---|---|
schemaType |
String: The schema type to set visibility on. This value cannot be null . |
packageIdentifiers |
MutableSet<PackageIdentifier!>: Represents the package that has access to the given schema type. This value cannot be null . |
Return | |
---|---|
GetSchemaResponse.Builder |
This value cannot be null . |
setVersion
fun setVersion(version: Int): GetSchemaResponse.Builder
Sets the database overall schema version.
Default version is 0
Parameters | |
---|---|
version |
Int: Value is 0 or greater |
Return | |
---|---|
GetSchemaResponse.Builder |
This value cannot be null . |