Stay organized with collections
Save and categorize content based on your preferences.
SearchSnippets
class SearchSnippets
Additional column returned by Contacts.CONTENT_FILTER_URI
explaining why the filter matched the contact. This column will contain extracts from the contact's constituent Data
items, formatted in a way that indicates the section of the snippet that matched the filter.
The following example searches for all contacts that match the query "presi" and requests the snippet column as well.
Builder builder = Contacts.CONTENT_FILTER_URI.buildUpon();
builder.appendPath("presi");
// Defer snippeting to the client side if possible, for performance reasons.
builder.appendQueryParameter(SearchSnippets.DEFERRED_SNIPPETING_KEY,"1");
Cursor cursor = getContentResolver().query(builder.build());
Bundle extras = cursor.getExtras();
if (extras.getBoolean(ContactsContract.DEFERRED_SNIPPETING)) {
// Do our own snippet formatting.
// For a contact with the email address (president@organization.com), the snippet
// column will contain the string "president@organization.com".
} else {
// The snippet has already been pre-formatted, we can display it as is.
// For a contact with the email address (president@organization.com), the snippet
// column will contain the string "[presi]dent@organization.com".
}
Summary
Constants |
static String |
The key to ask the provider to defer the formatting of the snippet to the client if possible, for performance reasons.
|
static String |
The search snippet constructed by SQLite snippeting functionality.
|
Constants
DEFERRED_SNIPPETING_KEY
static val DEFERRED_SNIPPETING_KEY: String
The key to ask the provider to defer the formatting of the snippet to the client if possible, for performance reasons. A value of 1 indicates true, 0 indicates false. False is the default. When a cursor is returned to the client, it should check for an extra with the name ContactsContract.DEFERRED_SNIPPETING
in the cursor. If it exists, the client should do its own formatting of the snippet. If it doesn't exist, the snippet column in the cursor should already contain a formatted snippet.
Value: "deferred_snippeting"
SNIPPET
static val SNIPPET: String
The search snippet constructed by SQLite snippeting functionality.
The snippet may contain (parts of) several data elements belonging to the contact, with the matching parts optionally surrounded by special characters that indicate the start and end of matching text. For example, if a contact has an address "123 Main Street", using a filter "mai" would return the formatted snippet "123 [Mai]n street".
Value: "snippet"
Public constructors
SearchSnippets
SearchSnippets()
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-02-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-02-10 UTC."],[],[],null,["# ContactsContract.SearchSnippets\n\nAdded in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)\n\nSearchSnippets\n==============\n\n*** ** * ** ***\n\nKotlin \\|[Java](/reference/android/provider/ContactsContract.SearchSnippets \"View this page in Java\") \n\n```\nclass SearchSnippets\n```\n\n|---|-------------------------------------------------------|\n| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html) ||\n| ↳ | [android.provider.ContactsContract.SearchSnippets](#) |\n\nAdditional column returned by [Contacts.CONTENT_FILTER_URI](/reference/kotlin/android/provider/ContactsContract.Contacts#CONTENT_FILTER_URI:android.net.Uri) explaining why the filter matched the contact. This column will contain extracts from the contact's constituent [Data](/reference/kotlin/android/provider/ContactsContract.Data) items, formatted in a way that indicates the section of the snippet that matched the filter.\n\nThe following example searches for all contacts that match the query \"presi\" and requests the snippet column as well. \n\n```kotlin\nBuilder builder = Contacts.CONTENT_FILTER_URI.buildUpon();\n builder.appendPath(\"presi\");\n // Defer snippeting to the client side if possible, for performance reasons.\n builder.appendQueryParameter(SearchSnippets.DEFERRED_SNIPPETING_KEY,\"1\");\n \n Cursor cursor = getContentResolver().query(builder.build());\n \n Bundle extras = cursor.getExtras();\n if (extras.getBoolean(ContactsContract.DEFERRED_SNIPPETING)) {\n // Do our own snippet formatting.\n // For a contact with the email address (president@organization.com), the snippet\n // column will contain the string \"president@organization.com\".\n } else {\n // The snippet has already been pre-formatted, we can display it as is.\n // For a contact with the email address (president@organization.com), the snippet\n // column will contain the string \"[presi]dent@organization.com\".\n }\n \n```\n\n\u003cbr /\u003e\n\nSummary\n-------\n\n| Constants ||\n|-----------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| static [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [DEFERRED_SNIPPETING_KEY](#DEFERRED_SNIPPETING_KEY:kotlin.String) The key to ask the provider to defer the formatting of the snippet to the client if possible, for performance reasons. |\n| static [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [SNIPPET](#SNIPPET:kotlin.String) The search snippet constructed by SQLite snippeting functionality. |\n\n| Public constructors ||\n|------------------------------------------------|---|\n| [SearchSnippets](#SearchSnippets())`()` \u003cbr /\u003e |\n\nConstants\n---------\n\n### DEFERRED_SNIPPETING_KEY\n\nAdded in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nstatic val DEFERRED_SNIPPETING_KEY: String\n```\n\nThe key to ask the provider to defer the formatting of the snippet to the client if possible, for performance reasons. A value of 1 indicates true, 0 indicates false. False is the default. When a cursor is returned to the client, it should check for an extra with the name [ContactsContract.DEFERRED_SNIPPETING](/reference/kotlin/android/provider/ContactsContract#DEFERRED_SNIPPETING:kotlin.String) in the cursor. If it exists, the client should do its own formatting of the snippet. If it doesn't exist, the snippet column in the cursor should already contain a formatted snippet. \n\n Value: \"deferred_snippeting\"\n\n### SNIPPET\n\nAdded in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nstatic val SNIPPET: String\n```\n\nThe search snippet constructed by SQLite snippeting functionality.\n\nThe snippet may contain (parts of) several data elements belonging to the contact, with the matching parts optionally surrounded by special characters that indicate the start and end of matching text. For example, if a contact has an address \"123 Main Street\", using a filter \"mai\" would return the formatted snippet \"123 \\[Mai\\]n street\". \n\n Value: \"snippet\"\n\n**See Also**\n\nPublic constructors\n-------------------\n\n### SearchSnippets\n\n```\nSearchSnippets()\n```"]]