Contacts.java revision 42fc2c6f0af1c6d8160e00d7319a1c6fd0258a6f
154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project/* 254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Copyright (C) 2006 The Android Open Source Project 354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * 454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * you may not use this file except in compliance with the License. 654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * You may obtain a copy of the License at 754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * 854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * 1054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 1154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 1254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * See the License for the specific language governing permissions and 1454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * limitations under the License. 1554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 1754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectpackage android.provider; 1854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 19f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Projectimport com.android.internal.R; 20f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project 2154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.content.ContentResolver; 2254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.content.ContentUris; 2354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.content.ContentValues; 2454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.content.Context; 2554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.database.Cursor; 2654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.graphics.Bitmap; 2754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.graphics.BitmapFactory; 2854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.net.Uri; 29534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkeyimport android.os.Build; 3054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.text.TextUtils; 3154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.util.Log; 3254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport android.widget.ImageView; 3354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 3454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.io.ByteArrayInputStream; 3554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.io.InputStream; 3654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 3754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project/** 3854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The Contacts provider stores all information about contacts. 3954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 40534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey@Deprecated 4154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectpublic class Contacts { 4254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private static final String TAG = "Contacts"; 43dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 44534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 4554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String AUTHORITY = "contacts"; 4654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 4754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 4854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this provider 4954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 50534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 5154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 5254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://" + AUTHORITY); 5354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 5454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** Signifies an email address row that is stored in the ContactMethods table */ 55534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 5654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int KIND_EMAIL = 1; 5754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** Signifies a postal address row that is stored in the ContactMethods table */ 58534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 5954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int KIND_POSTAL = 2; 6054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** Signifies an IM address row that is stored in the ContactMethods table */ 61534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 6254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int KIND_IM = 3; 6354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** Signifies an Organization row that is stored in the Organizations table */ 64534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 6554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int KIND_ORGANIZATION = 4; 6654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** Signifies an Phone row that is stored in the Phones table */ 67534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 6854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int KIND_PHONE = 5; 6954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 7054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 7154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 7254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 7354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private Contacts() {} 7454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 7554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 7654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Columns from the Settings table that other columns join into themselves. 7754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 78534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 7954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public interface SettingsColumns { 8054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 8154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The _SYNC_ACCOUNT to which this setting corresponds. This may be null. 8254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 8354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 84534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 8554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String _SYNC_ACCOUNT = "_sync_account"; 8654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 8754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 88d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana * The _SYNC_ACCOUNT_TYPE to which this setting corresponds. This may be null. 89d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana * <P>Type: TEXT</P> 90d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana */ 91534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 92d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana public static final String _SYNC_ACCOUNT_TYPE = "_sync_account_type"; 93d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana 94d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana /** 9554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The key of this setting. 9654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 9754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 98534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 9954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String KEY = "key"; 10054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 10154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 10254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The value of this setting. 10354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 10454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 105534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 10654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String VALUE = "value"; 10754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 10854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 10954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 11054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The settings over all of the people 11154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 112534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 11354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class Settings implements BaseColumns, SettingsColumns { 11454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 11554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 11654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 11754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private Settings() {} 11854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 11954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 12054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 12154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 122534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 12354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 12454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/settings"); 12554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 12654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 12754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The directory twig for this sub-table 12854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 129534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 13054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_DIRECTORY = "settings"; 13154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 13254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 13354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 13454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 135534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 13654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = "key ASC"; 13754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 13854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 13954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * A setting that is used to indicate if we should sync down all groups for the 14054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * specified account. For this setting the _SYNC_ACCOUNT column must be set. 14154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * If this isn't set then we will only sync the groups whose SHOULD_SYNC column 14254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * is set to true. 14354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <p> 14454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * This is a boolean setting. It is true if it is set and it is anything other than the 14554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * emptry string or "0". 14654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 147534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 14854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String SYNC_EVERYTHING = "syncEverything"; 14954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 150534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 15154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static String getSetting(ContentResolver cr, String account, String key) { 15254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // For now we only support a single account and the UI doesn't know what 15354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // the account name is, so we're using a global setting for SYNC_EVERYTHING. 15454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // Some day when we add multiple accounts to the UI this should honor the account 15554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // that was asked for. 15654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project String selectString; 15754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project String[] selectArgs; 15854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (false) { 15954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project selectString = (account == null) 16054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project ? "_sync_account is null AND key=?" 16154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project : "_sync_account=? AND key=?"; 162d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana// : "_sync_account=? AND _sync_account_type=? AND key=?"; 16354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project selectArgs = (account == null) 16454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project ? new String[]{key} 16554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project : new String[]{account, key}; 16654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } else { 16754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project selectString = "key=?"; 16854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project selectArgs = new String[] {key}; 16954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 17054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Cursor cursor = cr.query(Settings.CONTENT_URI, new String[]{VALUE}, 17154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project selectString, selectArgs, null); 17254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project try { 17354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (!cursor.moveToNext()) return null; 17454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return cursor.getString(0); 17554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } finally { 17654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project cursor.close(); 17754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 17854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 17954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 180534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 18154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static void setSetting(ContentResolver cr, String account, String key, 18254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project String value) { 18354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project ContentValues values = new ContentValues(); 18454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // For now we only support a single account and the UI doesn't know what 18554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // the account name is, so we're using a global setting for SYNC_EVERYTHING. 18654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // Some day when we add multiple accounts to the UI this should honor the account 18754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // that was asked for. 188d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana //values.put(_SYNC_ACCOUNT, account.mName); 189d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana //values.put(_SYNC_ACCOUNT_TYPE, account.mType); 19054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project values.put(KEY, key); 19154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project values.put(VALUE, value); 19254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project cr.update(Settings.CONTENT_URI, values, null, null); 19354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 19454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 19554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 19654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 19754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Columns from the People table that other tables join into themselves. 19854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 199534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 20054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public interface PeopleColumns { 20154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 202b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * The person's name. 20354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 20454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 205534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 20654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String NAME = "name"; 20754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 20854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 209b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * Phonetic equivalent of the person's name, in a locale-dependent 210b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * character set (e.g. hiragana for Japanese). 211b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * Used for pronunciation and/or collation in some languages. 212b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * <p>Type: TEXT</P> 213b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project */ 214534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 215b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project public static final String PHONETIC_NAME = "phonetic_name"; 216dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 217b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project /** 21854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The display name. If name is not null name, else if number is not null number, 21954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * else if email is not null email. 22054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 22154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 222534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 22354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DISPLAY_NAME = "display_name"; 22454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 22554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 226ba87e3e6c985e7175152993b5efcc7dd2f0e1c93The Android Open Source Project * The field for sorting list phonetically. The content of this field 227ba87e3e6c985e7175152993b5efcc7dd2f0e1c93The Android Open Source Project * may not be human readable but phonetically sortable. 228ba87e3e6c985e7175152993b5efcc7dd2f0e1c93The Android Open Source Project * <P>Type: TEXT</p> 229ba87e3e6c985e7175152993b5efcc7dd2f0e1c93The Android Open Source Project * @hide Used only in Contacts application for now. 230ba87e3e6c985e7175152993b5efcc7dd2f0e1c93The Android Open Source Project */ 231534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 232ba87e3e6c985e7175152993b5efcc7dd2f0e1c93The Android Open Source Project public static final String SORT_STRING = "sort_string"; 233dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 234ba87e3e6c985e7175152993b5efcc7dd2f0e1c93The Android Open Source Project /** 23554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Notes about the person. 23654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 23754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 238534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 23954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String NOTES = "notes"; 24054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 24154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 24254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The number of times a person has been contacted 24354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER</P> 24454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 245534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 24654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String TIMES_CONTACTED = "times_contacted"; 24754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 24854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 24954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The last time a person was contacted. 25054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER</P> 25154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 252534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 25354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LAST_TIME_CONTACTED = "last_time_contacted"; 25454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 25554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 25654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * A custom ringtone associated with a person. Not always present. 25754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT (URI to the ringtone)</P> 25854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 259534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 26054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CUSTOM_RINGTONE = "custom_ringtone"; 26154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 26254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 26354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Whether the person should always be sent to voicemail. Not always 26454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * present. 26554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (0 for false, 1 for true)</P> 26654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 267534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 26854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String SEND_TO_VOICEMAIL = "send_to_voicemail"; 26954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 27054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 27154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Is the contact starred? 27254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (boolean)</P> 27354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 274534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 27554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String STARRED = "starred"; 27654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 27754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 27854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The server version of the photo 27954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT (the version number portion of the photo URI)</P> 28054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 281534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 282dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String PHOTO_VERSION = "photo_version"; 28354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 28454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 28554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 28654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * This table contains people. 28754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 288534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 28954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class People implements BaseColumns, SyncConstValue, PeopleColumns, 29054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project PhonesColumns, PresenceColumns { 29154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 29254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 29354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 29454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private People() {} 29554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 29654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 29754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 29854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 299534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 30054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 30154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/people"); 30254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 30354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 30454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for filtering people by name. The filter 30554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * argument should be passed as an additional path segment after this URI. 30654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 307534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 30854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_FILTER_URI = 30954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/people/filter"); 31054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 31154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 31254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for the table that holds the deleted 31354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * contacts. 31454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 315534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 31654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri DELETED_CONTENT_URI = 31754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/deleted_people"); 31854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 31954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 3205104518fd7db24b0757be336092c94439e847e36Jeffrey Sharkey * The content:// style URL for filtering people that have a specific 3215104518fd7db24b0757be336092c94439e847e36Jeffrey Sharkey * E-mail or IM address. The filter argument should be passed as an 3225104518fd7db24b0757be336092c94439e847e36Jeffrey Sharkey * additional path segment after this URI. This matches any people with 3235104518fd7db24b0757be336092c94439e847e36Jeffrey Sharkey * at least one E-mail or IM {@link ContactMethods} that match the 3245104518fd7db24b0757be336092c94439e847e36Jeffrey Sharkey * filter. 325dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar * 326935ae463d495d41155e27feb849768ad2b8b16dbDianne Hackborn * Not exposed because we expect significant changes in the contacts 327935ae463d495d41155e27feb849768ad2b8b16dbDianne Hackborn * schema and do not want to have to support this. 328935ae463d495d41155e27feb849768ad2b8b16dbDianne Hackborn * @hide 3295104518fd7db24b0757be336092c94439e847e36Jeffrey Sharkey */ 330534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 3315104518fd7db24b0757be336092c94439e847e36Jeffrey Sharkey public static final Uri WITH_EMAIL_OR_IM_FILTER_URI = 3325104518fd7db24b0757be336092c94439e847e36Jeffrey Sharkey Uri.parse("content://contacts/people/with_email_or_im_filter"); 333dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 3345104518fd7db24b0757be336092c94439e847e36Jeffrey Sharkey /** 33554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of {@link #CONTENT_URI} providing a directory of 33654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * people. 33754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 338534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 33954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_TYPE = "vnd.android.cursor.dir/person"; 34054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 34154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 34254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of a {@link #CONTENT_URI} subdirectory of a single 34354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * person. 34454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 345534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 34654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/person"; 34754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 34854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 34954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 35054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 351534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 35254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = People.NAME + " ASC"; 35354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 35454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 35554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The ID of the persons preferred phone number. 35654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (foreign key to phones table on the _ID field)</P> 35754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 358534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 35954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PRIMARY_PHONE_ID = "primary_phone"; 36054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 36154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 36254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The ID of the persons preferred email. 36354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (foreign key to contact_methods table on the 36454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * _ID field)</P> 36554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 366534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 36754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PRIMARY_EMAIL_ID = "primary_email"; 36854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 36954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 37054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The ID of the persons preferred organization. 37154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (foreign key to organizations table on the 37254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * _ID field)</P> 37354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 374534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 37554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PRIMARY_ORGANIZATION_ID = "primary_organization"; 37654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 37754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 37854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Mark a person as having been contacted. 37954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * 38054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param resolver the ContentResolver to use 38154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param personId the person who was contacted 38254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 383534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 38454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static void markAsContacted(ContentResolver resolver, long personId) { 38554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri uri = ContentUris.withAppendedId(CONTENT_URI, personId); 38654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project uri = Uri.withAppendedPath(uri, "update_contact_time"); 38754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project ContentValues values = new ContentValues(); 38854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // There is a trigger in place that will update TIMES_CONTACTED when 38954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // LAST_TIME_CONTACTED is modified. 39054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project values.put(LAST_TIME_CONTACTED, System.currentTimeMillis()); 39154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project resolver.update(uri, values, null, null); 39254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 39354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 39454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 3956e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa * @hide Used in vCard parser code. 39654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 397534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 3986e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa public static long tryGetMyContactsGroupId(ContentResolver resolver) { 39954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Cursor groupsCursor = resolver.query(Groups.CONTENT_URI, GROUPS_PROJECTION, 40054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Groups.SYSTEM_ID + "='" + Groups.GROUP_MY_CONTACTS + "'", null, null); 40154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (groupsCursor != null) { 40254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project try { 40354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (groupsCursor.moveToFirst()) { 4046e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa return groupsCursor.getLong(0); 40554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 40654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } finally { 40754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project groupsCursor.close(); 40854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 40954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 4106e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa return 0; 4116e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa } 41254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 4136e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa /** 4146e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa * Adds a person to the My Contacts group. 4156e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa * 4166e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa * @param resolver the resolver to use 4176e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa * @param personId the person to add to the group 4186e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa * @return the URI of the group membership row 4196e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa * @throws IllegalStateException if the My Contacts group can't be found 4206e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa */ 421534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 4226e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa public static Uri addToMyContactsGroup(ContentResolver resolver, long personId) { 4236e9610e1dba59bf708b45e0039856d70e6b9768bDaisuke Miyakawa long groupId = tryGetMyContactsGroupId(resolver); 42454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (groupId == 0) { 42554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project throw new IllegalStateException("Failed to find the My Contacts group"); 42654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 427dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 42854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return addToGroup(resolver, personId, groupId); 42954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 43054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 43154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 43254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Adds a person to a group referred to by name. 433dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar * 43454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param resolver the resolver to use 43554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param personId the person to add to the group 43654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param groupName the name of the group to add the contact to 43754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @return the URI of the group membership row 43854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @throws IllegalStateException if the group can't be found 43954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 440534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 44154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static Uri addToGroup(ContentResolver resolver, long personId, String groupName) { 44254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project long groupId = 0; 44354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Cursor groupsCursor = resolver.query(Groups.CONTENT_URI, GROUPS_PROJECTION, 44454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Groups.NAME + "=?", new String[] { groupName }, null); 44554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (groupsCursor != null) { 44654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project try { 44754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (groupsCursor.moveToFirst()) { 44854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project groupId = groupsCursor.getLong(0); 44954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 45054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } finally { 45154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project groupsCursor.close(); 45254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 45354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 45454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 45554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (groupId == 0) { 45654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project throw new IllegalStateException("Failed to find the My Contacts group"); 45754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 458dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 45954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return addToGroup(resolver, personId, groupId); 46054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 46154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 46254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 46354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Adds a person to a group. 464dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar * 46554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param resolver the resolver to use 46654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param personId the person to add to the group 46754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param groupId the group to add the person to 46854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @return the URI of the group membership row 46954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 470534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 47154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static Uri addToGroup(ContentResolver resolver, long personId, long groupId) { 47254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project ContentValues values = new ContentValues(); 47354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project values.put(GroupMembership.PERSON_ID, personId); 47454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project values.put(GroupMembership.GROUP_ID, groupId); 47554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return resolver.insert(GroupMembership.CONTENT_URI, values); 47654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 477dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 47854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private static final String[] GROUPS_PROJECTION = new String[] { 47954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Groups._ID, 48054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project }; 48154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 48254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 48354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Creates a new contacts and adds it to the "My Contacts" group. 484dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar * 48554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param resolver the ContentResolver to use 48654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param values the values to use when creating the contact 48754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @return the URI of the contact, or null if the operation fails 48854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 489534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 49054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static Uri createPersonInMyContactsGroup(ContentResolver resolver, 49154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project ContentValues values) { 49254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 49354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri contactUri = resolver.insert(People.CONTENT_URI, values); 49454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (contactUri == null) { 49554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Log.e(TAG, "Failed to create the contact"); 49654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return null; 49754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 49854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 49954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (addToMyContactsGroup(resolver, ContentUris.parseId(contactUri)) == null) { 50054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project resolver.delete(contactUri, null, null); 50154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return null; 50254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 50354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return contactUri; 50454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 50554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 506534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 50754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static Cursor queryGroups(ContentResolver resolver, long person) { 50854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return resolver.query(GroupMembership.CONTENT_URI, null, "person=?", 50954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project new String[]{String.valueOf(person)}, Groups.DEFAULT_SORT_ORDER); 51054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 51154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 51254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 51354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Set the photo for this person. data may be null 51454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param cr the ContentResolver to use 51554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param person the Uri of the person whose photo is to be updated 51654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param data the byte[] that represents the photo 51754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 518534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 51954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static void setPhotoData(ContentResolver cr, Uri person, byte[] data) { 52054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri photoUri = Uri.withAppendedPath(person, Contacts.Photos.CONTENT_DIRECTORY); 52154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project ContentValues values = new ContentValues(); 52254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project values.put(Photos.DATA, data); 52354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project cr.update(photoUri, values, null, null); 52454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 525dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 52654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 52754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Opens an InputStream for the person's photo and returns the photo as a Bitmap. 52854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * If the person's photo isn't present returns the placeholderImageResource instead. 52954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param person the person whose photo should be used 53054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 531534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 53254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static InputStream openContactPhotoInputStream(ContentResolver cr, Uri person) { 53354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri photoUri = Uri.withAppendedPath(person, Contacts.Photos.CONTENT_DIRECTORY); 53454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Cursor cursor = cr.query(photoUri, new String[]{Photos.DATA}, null, null, null); 53554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project try { 53654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (!cursor.moveToNext()) { 53754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return null; 53854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 53954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project byte[] data = cursor.getBlob(0); 54054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (data == null) { 54154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return null; 54254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 54354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return new ByteArrayInputStream(data); 54454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } finally { 54542fc2c6f0af1c6d8160e00d7319a1c6fd0258a6fJeff Sharkey if (cursor != null) cursor.close(); 54654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 54754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 54854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 54954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 55054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Opens an InputStream for the person's photo and returns the photo as a Bitmap. 55154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * If the person's photo isn't present returns the placeholderImageResource instead. 55254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param context the Context 55354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param person the person whose photo should be used 55454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param placeholderImageResource the image resource to use if the person doesn't 55554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * have a photo 55654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param options the decoding options, can be set to null 55754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 558534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 55954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static Bitmap loadContactPhoto(Context context, Uri person, 56054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project int placeholderImageResource, BitmapFactory.Options options) { 56154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (person == null) { 56254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return loadPlaceholderPhoto(placeholderImageResource, context, options); 56354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 56454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 56554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project InputStream stream = openContactPhotoInputStream(context.getContentResolver(), person); 56654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Bitmap bm = stream != null ? BitmapFactory.decodeStream(stream, null, options) : null; 56754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (bm == null) { 56854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project bm = loadPlaceholderPhoto(placeholderImageResource, context, options); 56954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 57054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return bm; 57154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 57254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 57354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private static Bitmap loadPlaceholderPhoto(int placeholderImageResource, Context context, 57454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project BitmapFactory.Options options) { 57554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (placeholderImageResource == 0) { 57654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return null; 57754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 57854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return BitmapFactory.decodeResource(context.getResources(), 57954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project placeholderImageResource, options); 58054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 58154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 58254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 58354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * A sub directory of a single person that contains all of their Phones. 58454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 585534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 58654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class Phones implements BaseColumns, PhonesColumns, 58754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project PeopleColumns { 58854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 58954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 59054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 59154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private Phones() {} 59254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 59354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 59454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The directory twig for this sub-table 59554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 596534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 59754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_DIRECTORY = "phones"; 59854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 59954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 60054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 60154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 602534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 60354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = "number ASC"; 60454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 60554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 60654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 60754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * A subdirectory of a single person that contains all of their 60854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * ContactMethods. 60954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 610534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 61154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class ContactMethods 61254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project implements BaseColumns, ContactMethodsColumns, PeopleColumns { 61354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 61454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 61554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 61654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private ContactMethods() {} 61754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 61854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 61954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The directory twig for this sub-table 62054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 621534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 62254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_DIRECTORY = "contact_methods"; 62354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 62454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 62554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 62654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 627534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 62854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = "data ASC"; 62954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 63054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 63154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 63254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extensions for a person 63354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 634534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 63554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static class Extensions implements BaseColumns, ExtensionsColumns { 63654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 63754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 63854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 63954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private Extensions() {} 64054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 64154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 64254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The directory twig for this sub-table 64354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 644534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 64554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_DIRECTORY = "extensions"; 64654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 64754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 64854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 64954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 650534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 65154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = "name ASC"; 65254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 65354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 65454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The ID of the person this phone number is assigned to. 65554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (long)</P> 65654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 657534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 65854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PERSON_ID = "person"; 65954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 66054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 66154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 66254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 66354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Columns from the groups table. 66454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 665534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 66654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public interface GroupsColumns { 66754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 66854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The group name. 66954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 67054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 671534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 67254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String NAME = "name"; 67354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 67454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 67554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Notes about the group. 67654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 67754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 678534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 67954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String NOTES = "notes"; 68054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 68154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 68254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Whether this group should be synced if the SYNC_EVERYTHING settings is false 68354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * for this group's account. 68454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (boolean)</P> 68554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 686534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 68754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String SHOULD_SYNC = "should_sync"; 68854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 68954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 69054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The ID of this group if it is a System Group, null otherwise. 69154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 69254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 693534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 69454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String SYSTEM_ID = "system_id"; 69554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 69654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 69754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 69854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * This table contains the groups for an account. 69954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 700534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 70154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class Groups 70254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project implements BaseColumns, SyncConstValue, GroupsColumns { 70354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 70454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 70554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 70654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private Groups() {} 70754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 70854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 70954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 71054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 711534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 71254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 71354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/groups"); 71454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 71554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 71654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for the table that holds the deleted 71754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * groups. 71854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 719534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 72054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri DELETED_CONTENT_URI = 72154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/deleted_groups"); 72254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 72354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 72454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of {@link #CONTENT_URI} providing a directory of 72554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * groups. 72654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 727534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 72854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contactsgroup"; 72954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 73054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 73154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of a {@link #CONTENT_URI} subdirectory of a single 73254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * group. 73354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 734534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 73554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contactsgroup"; 73654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 73754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 73854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 73954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 740534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 74154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = NAME + " ASC"; 74254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 74354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 74454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * 74554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 746534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 74754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String GROUP_ANDROID_STARRED = "Starred in Android"; 74854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 74954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 75054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The "My Contacts" system group. 75154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 752534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 75354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String GROUP_MY_CONTACTS = "Contacts"; 75454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 75554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 75654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 75754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Columns from the Phones table that other columns join into themselves. 75854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 759534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 76054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public interface PhonesColumns { 76154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 76254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The type of the the phone number. 76354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (one of the constants below)</P> 76454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 765534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 76654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String TYPE = "type"; 76754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 768534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 76954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_CUSTOM = 0; 770534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 77154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_HOME = 1; 772534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 77354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_MOBILE = 2; 774534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 77554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_WORK = 3; 776534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 77754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_FAX_WORK = 4; 778534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 77954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_FAX_HOME = 5; 780534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 78154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_PAGER = 6; 782534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 78354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_OTHER = 7; 78454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 78554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 78654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The user provided label for the phone number, only used if TYPE is TYPE_CUSTOM. 78754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 78854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 789534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 79054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LABEL = "label"; 79154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 79254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 79354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The phone number as the user entered it. 79454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 79554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 796534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 79754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String NUMBER = "number"; 79854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 79954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 80054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The normalized phone number 80154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 80254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 803534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 80454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String NUMBER_KEY = "number_key"; 80554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 80654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 80754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Whether this is the primary phone number 80854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (if set, non-0 means true)</P> 80954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 810534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 81154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String ISPRIMARY = "isprimary"; 81254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 81354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 81454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 81554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * This table stores phone numbers and a reference to the person that the 81654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * contact method belongs to. Phone numbers are stored separately from 81754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * other contact methods to make caller ID lookup more efficient. 81854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 819534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 82054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class Phones 82154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project implements BaseColumns, PhonesColumns, PeopleColumns { 82254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 82354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 82454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 82554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private Phones() {} 82654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 827534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 82854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final CharSequence getDisplayLabel(Context context, int type, 82954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project CharSequence label, CharSequence[] labelArray) { 83054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project CharSequence display = ""; 83154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 83254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (type != People.Phones.TYPE_CUSTOM) { 833dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar CharSequence[] labels = labelArray != null? labelArray 83454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project : context.getResources().getTextArray( 83554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project com.android.internal.R.array.phoneTypes); 83654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project try { 83754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = labels[type - 1]; 83854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } catch (ArrayIndexOutOfBoundsException e) { 83954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = labels[People.Phones.TYPE_HOME - 1]; 84054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 84154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } else { 84254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (!TextUtils.isEmpty(label)) { 84354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = label; 84454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 84554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 84654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return display; 84754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 84854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 849534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 85054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final CharSequence getDisplayLabel(Context context, int type, 85154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project CharSequence label) { 85254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return getDisplayLabel(context, type, label, null); 85354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 854dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 85554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 85654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 85754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 858534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 85954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 86054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/phones"); 86154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 86254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 86354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for filtering phone numbers 86454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 865534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 86654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_FILTER_URL = 86754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/phones/filter"); 86854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 86954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 87054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of {@link #CONTENT_URI} providing a directory of 87154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * phones. 87254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 873534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 87454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_TYPE = "vnd.android.cursor.dir/phone"; 87554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 87654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 87754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of a {@link #CONTENT_URI} subdirectory of a single 87854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * phone. 87954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 880534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 88154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/phone"; 88254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 88354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 88454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 88554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 886534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 88754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = "name ASC"; 88854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 88954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 89054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The ID of the person this phone number is assigned to. 89154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (long)</P> 89254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 893534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 89454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PERSON_ID = "person"; 89554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 89654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 897534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 89854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class GroupMembership implements BaseColumns, GroupsColumns { 89954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 90054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 90154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 90254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private GroupMembership() {} 90354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 90454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 90554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 90654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 907534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 90854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 90954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/groupmembership"); 91054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 91154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 91254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 91354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 914534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 91554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri RAW_CONTENT_URI = 91654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/groupmembershipraw"); 91754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 91854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 91954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The directory twig for this sub-table 92054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 921534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 92254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_DIRECTORY = "groupmembership"; 923534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey 92454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 92554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of {@link #CONTENT_URI} providing a directory of all 92654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * person groups. 92754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 928534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 92954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contactsgroupmembership"; 93054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 93154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 93254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of a {@link #CONTENT_URI} subdirectory of a single 93354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * person group. 93454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 935534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 93654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_ITEM_TYPE = 93754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project "vnd.android.cursor.item/contactsgroupmembership"; 93854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 93954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 94054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 94154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 942534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 94354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = "group_id ASC"; 94454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 94554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 94654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The row id of the accounts group. 94754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 94854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 949534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 95054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String GROUP_ID = "group_id"; 95154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 95254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 95354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The sync id of the group. 95454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 95554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 956534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 95754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String GROUP_SYNC_ID = "group_sync_id"; 95854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 95954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 96054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The account of the group. 96154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 96254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 963534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 96454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String GROUP_SYNC_ACCOUNT = "group_sync_account"; 96554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 96654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 967d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana * The account type of the group. 968d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana * <P>Type: TEXT</P> 969d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana */ 970534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 971d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana public static final String GROUP_SYNC_ACCOUNT_TYPE = "group_sync_account_type"; 972d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana 973d9d2f1140b52fd0c014e9deac59f6000564b7e84Fred Quintana /** 97454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The row id of the person. 97554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 97654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 977534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 97854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PERSON_ID = "person"; 97954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 98054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 98154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 98254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Columns from the ContactMethods table that other tables join into 98354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * themseleves. 98454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 985534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 98654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public interface ContactMethodsColumns { 98754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 98854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The kind of the the contact method. For example, email address, 98954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * postal address, etc. 99054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (one of the values below)</P> 99154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 992534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 99354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String KIND = "kind"; 99454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 99554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 99654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The type of the contact method, must be one of the types below. 99754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (one of the values below)</P> 99854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 999534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 100054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String TYPE = "type"; 1001534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 100254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_CUSTOM = 0; 1003534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 100454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_HOME = 1; 1005534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 100654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_WORK = 2; 1007534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 100854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_OTHER = 3; 100954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 101054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 10117c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa * @hide This is temporal. TYPE_MOBILE should be added to TYPE in the future. 10127c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa */ 1013534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 10147c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa public static final int MOBILE_EMAIL_TYPE_INDEX = 2; 10157c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa 10167c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa /** 10177c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa * @hide This is temporal. TYPE_MOBILE should be added to TYPE in the future. 10187c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa * This is not "mobile" but "CELL" since vCard uses it for identifying mobile phone. 10197c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa */ 1020534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 10217c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa public static final String MOBILE_EMAIL_TYPE_NAME = "_AUTO_CELL"; 10227c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa 10237c3e18c558820de543e3aa4fb3a777940106166cDaisuke Miyakawa /** 102454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The user defined label for the the contact method. 102554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 102654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1027534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 102854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LABEL = "label"; 102954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 103054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 103154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The data for the contact method. 103254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 103354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1034534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 103554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DATA = "data"; 103654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 103754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 103854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Auxiliary data for the contact method. 103954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 104054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1041534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 104254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String AUX_DATA = "aux_data"; 104354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 104454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 104554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Whether this is the primary organization 104654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (if set, non-0 means true)</P> 104754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1048534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 104954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String ISPRIMARY = "isprimary"; 105054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 105154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 105254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 105354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * This table stores all non-phone contact methods and a reference to the 105454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * person that the contact method belongs to. 105554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1056534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 105754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class ContactMethods 105854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project implements BaseColumns, ContactMethodsColumns, PeopleColumns { 105954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 106054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The column with latitude data for postal locations 106154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: REAL</P> 106254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1063534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 106454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String POSTAL_LOCATION_LATITUDE = DATA; 106554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 106654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 106754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The column with longitude data for postal locations 106854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: REAL</P> 106954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1070534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 107154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String POSTAL_LOCATION_LONGITUDE = AUX_DATA; 107254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 107354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 107454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The predefined IM protocol types. The protocol can either be non-present, one 107554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * of these types, or a free-form string. These cases are encoded in the AUX_DATA 107654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * column as: 107754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * - null 107854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * - pre:<an integer, one of the protocols below> 107954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * - custom:<a string> 108054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1081534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 108254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int PROTOCOL_AIM = 0; 1083534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 108454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int PROTOCOL_MSN = 1; 1085534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 108654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int PROTOCOL_YAHOO = 2; 1087534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 108854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int PROTOCOL_SKYPE = 3; 1089534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 109054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int PROTOCOL_QQ = 4; 1091534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 109254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int PROTOCOL_GOOGLE_TALK = 5; 1093534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 109454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int PROTOCOL_ICQ = 6; 1095534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 109654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int PROTOCOL_JABBER = 7; 109754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 1098534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 109954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static String encodePredefinedImProtocol(int protocol) { 110054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return "pre:" + protocol; 110154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 110254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 1103534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 110454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static String encodeCustomImProtocol(String protocolString) { 110554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return "custom:" + protocolString; 110654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 110754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 1108534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 110954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static Object decodeImProtocol(String encodedString) { 111054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (encodedString == null) { 111154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return null; 111254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 111354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 111454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (encodedString.startsWith("pre:")) { 111554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return Integer.parseInt(encodedString.substring(4)); 111654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 111754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 111854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (encodedString.startsWith("custom:")) { 111954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return encodedString.substring(7); 112054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 112154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 112254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project throw new IllegalArgumentException( 112354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project "the value is not a valid encoded protocol, " + encodedString); 112454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 1125dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 112654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 11279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * This looks up the provider name defined in 11289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * {@link android.provider.Im.ProviderNames} from the predefined IM protocol id. 112954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * This is used for interacting with the IM application. 11309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 113154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param protocol the protocol ID 11329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the provider name the IM app uses for the given protocol, or null if no 113354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * provider is defined for the given protocol 113454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @hide 113554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1136534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 11379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static String lookupProviderNameFromId(int protocol) { 113854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project switch (protocol) { 113954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case PROTOCOL_GOOGLE_TALK: 11409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return Im.ProviderNames.GTALK; 114154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case PROTOCOL_AIM: 11429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return Im.ProviderNames.AIM; 114354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case PROTOCOL_MSN: 11449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return Im.ProviderNames.MSN; 114554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case PROTOCOL_YAHOO: 11469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return Im.ProviderNames.YAHOO; 114754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case PROTOCOL_ICQ: 11489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return Im.ProviderNames.ICQ; 11499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case PROTOCOL_JABBER: 11509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return Im.ProviderNames.JABBER; 11519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case PROTOCOL_SKYPE: 11529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return Im.ProviderNames.SKYPE; 11539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case PROTOCOL_QQ: 11549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return Im.ProviderNames.QQ; 115554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 115654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return null; 115754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 115854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 115954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 116054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 116154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 116254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private ContactMethods() {} 116354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 1164534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 116554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final CharSequence getDisplayLabel(Context context, int kind, 116654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project int type, CharSequence label) { 116754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project CharSequence display = ""; 116854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project switch (kind) { 116954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case KIND_EMAIL: { 117054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (type != People.ContactMethods.TYPE_CUSTOM) { 117154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project CharSequence[] labels = context.getResources().getTextArray( 117254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project com.android.internal.R.array.emailAddressTypes); 117354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project try { 117454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = labels[type - 1]; 117554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } catch (ArrayIndexOutOfBoundsException e) { 117654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = labels[ContactMethods.TYPE_HOME - 1]; 117754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 117854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } else { 117954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (!TextUtils.isEmpty(label)) { 118054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = label; 118154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 118254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 118354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project break; 118454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 118554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 118654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case KIND_POSTAL: { 118754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (type != People.ContactMethods.TYPE_CUSTOM) { 118854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project CharSequence[] labels = context.getResources().getTextArray( 118954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project com.android.internal.R.array.postalAddressTypes); 119054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project try { 119154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = labels[type - 1]; 119254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } catch (ArrayIndexOutOfBoundsException e) { 119354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = labels[ContactMethods.TYPE_HOME - 1]; 119454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 119554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } else { 119654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (!TextUtils.isEmpty(label)) { 119754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = label; 119854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 119954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 120054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project break; 120154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 120254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 120354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project default: 120454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = context.getString(R.string.untitled); 120554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 120654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return display; 120754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 120854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 120954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 121054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Add a longitude and latitude location to a postal address. 121154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * 121254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param context the context to use when updating the database 121354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param postalId the address to update 121454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param latitude the latitude for the address 121554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param longitude the longitude for the address 121654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1217534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 121854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public void addPostalLocation(Context context, long postalId, 121954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project double latitude, double longitude) { 122054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project final ContentResolver resolver = context.getContentResolver(); 122154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // Insert the location 122254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project ContentValues values = new ContentValues(2); 122354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project values.put(POSTAL_LOCATION_LATITUDE, latitude); 122454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project values.put(POSTAL_LOCATION_LONGITUDE, longitude); 122554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri loc = resolver.insert(CONTENT_URI, values); 122654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project long locId = ContentUris.parseId(loc); 122754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 122854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project // Update the postal address 122954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project values.clear(); 123054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project values.put(AUX_DATA, locId); 123154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project resolver.update(ContentUris.withAppendedId(CONTENT_URI, postalId), values, null, null); 123254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 123354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 123454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 123554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 123654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1237534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 123854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 123954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/contact_methods"); 124054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 124154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 124254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for sub-directory of e-mail addresses. 124354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1244534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 124554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_EMAIL_URI = 124654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/contact_methods/email"); 124754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 124854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 124954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of {@link #CONTENT_URI} providing a directory of 125054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * phones. 125154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1252534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 125354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact-methods"; 125454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 125554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 125654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of a {@link #CONTENT_EMAIL_URI} sub-directory of\ 125754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * multiple {@link Contacts#KIND_EMAIL} entries. 125854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1259534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 126054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_EMAIL_TYPE = "vnd.android.cursor.dir/email"; 126154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 126254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 126354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of a {@link #CONTENT_EMAIL_URI} sub-directory of\ 126454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * multiple {@link Contacts#KIND_POSTAL} entries. 126554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1266534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 126754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_POSTAL_TYPE = "vnd.android.cursor.dir/postal-address"; 126854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 126954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 127054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of a {@link #CONTENT_URI} sub-directory of a single 127154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * {@link Contacts#KIND_EMAIL} entry. 127254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1273534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 127454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_EMAIL_ITEM_TYPE = "vnd.android.cursor.item/email"; 127554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 127654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 127754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of a {@link #CONTENT_URI} sub-directory of a single 127854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * {@link Contacts#KIND_POSTAL} entry. 127954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1280534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 128154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_POSTAL_ITEM_TYPE 128254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project = "vnd.android.cursor.item/postal-address"; 128354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 128454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 128554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of a {@link #CONTENT_URI} sub-directory of a single 128654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * {@link Contacts#KIND_IM} entry. 128754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1288534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 128954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_IM_ITEM_TYPE = "vnd.android.cursor.item/jabber-im"; 129054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 129154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 129254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 129354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1294534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 129554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = "name ASC"; 129654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 129754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 129854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The ID of the person this contact method is assigned to. 129954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (long)</P> 130054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1301534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 130254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PERSON_ID = "person"; 130354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 130454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 130554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 130654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The IM presence columns with some contacts specific columns mixed in. 130754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1308534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 130954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public interface PresenceColumns extends Im.CommonPresenceColumns { 131054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 131154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The IM service the presence is coming from. Formatted using either 131254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * {@link Contacts.ContactMethods#encodePredefinedImProtocol} or 131354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * {@link Contacts.ContactMethods#encodeCustomImProtocol}. 131454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: STRING</P> 131554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1316534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 131754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String IM_PROTOCOL = "im_protocol"; 131854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 131954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 132054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The IM handle the presence item is for. The handle is scoped to 132154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * the {@link #IM_PROTOCOL}. 132254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: STRING</P> 132354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1324534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 132554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String IM_HANDLE = "im_handle"; 132654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 132754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 132854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The IM account for the local user that the presence data came from. 132954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: STRING</P> 133054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1331534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 133254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String IM_ACCOUNT = "im_account"; 133354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 133454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 133554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 133654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Contains presence information about contacts. 133754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @hide 133854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1339534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 134054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class Presence 134154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project implements BaseColumns, PresenceColumns, PeopleColumns { 134254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 134354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 134454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1345534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 134654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 134754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/presence"); 134854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 134954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 135054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The ID of the person this presence item is assigned to. 135154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (long)</P> 135254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1353534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 135454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PERSON_ID = "person"; 135554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 135654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 135754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Gets the resource ID for the proper presence icon. 1358dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar * 135954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param status the status to get the icon for 136054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @return the resource ID for the proper presence icon 136154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1362534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 136354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int getPresenceIconResourceId(int status) { 136454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project switch (status) { 136554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case Contacts.People.AVAILABLE: 136654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return com.android.internal.R.drawable.presence_online; 1367dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 136854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case Contacts.People.IDLE: 136954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case Contacts.People.AWAY: 137054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return com.android.internal.R.drawable.presence_away; 1371dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 137254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case Contacts.People.DO_NOT_DISTURB: 137354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return com.android.internal.R.drawable.presence_busy; 1374dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 137554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case Contacts.People.INVISIBLE: 137654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return com.android.internal.R.drawable.presence_invisible; 1377dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 137854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project case Contacts.People.OFFLINE: 137954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project default: 138054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return com.android.internal.R.drawable.presence_offline; 138154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 138254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 138354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 138454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 138554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Sets a presence icon to the proper graphic 138654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * 138754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param icon the icon to to set 138854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * @param serverStatus that status 138954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1390534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 139154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final void setPresenceIcon(ImageView icon, int serverStatus) { 139254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project icon.setImageResource(getPresenceIconResourceId(serverStatus)); 139354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 139454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 139554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 139654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 139754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Columns from the Organizations table that other columns join into themselves. 139854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1399534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 140054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public interface OrganizationColumns { 140154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 1402ae499953ce0e00aae78f374514d4bcc6b99c8354Evan JIANG * The type of the organizations. 140354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (one of the constants below)</P> 140454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1405534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 140654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String TYPE = "type"; 140754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 1408534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 140954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_CUSTOM = 0; 1410534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 141154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_WORK = 1; 1412534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 141354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final int TYPE_OTHER = 2; 141454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 141554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 141654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The user provided label, only used if TYPE is TYPE_CUSTOM. 141754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 141854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1419534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 142054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LABEL = "label"; 142154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 142254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 142354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The name of the company for this organization. 142454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 142554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1426534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 142754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String COMPANY = "company"; 142854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 142954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 143054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The title within this organization. 143154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 143254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1433534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 143454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String TITLE = "title"; 143554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 143654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 143754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The person this organization is tied to. 143854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 143954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1440534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 144154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PERSON_ID = "person"; 144254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 144354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 144454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Whether this is the primary organization 144554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (if set, non-0 means true)</P> 144654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1447534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 144854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String ISPRIMARY = "isprimary"; 144954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 145054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 145154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 145254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * A sub directory of a single person that contains all of their Phones. 145354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1454534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 145554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class Organizations implements BaseColumns, OrganizationColumns { 145654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 145754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 145854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 145954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private Organizations() {} 146054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 1461534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 146254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final CharSequence getDisplayLabel(Context context, int type, 146354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project CharSequence label) { 146454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project CharSequence display = ""; 146554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 146654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (type != TYPE_CUSTOM) { 146754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project CharSequence[] labels = context.getResources().getTextArray( 146854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project com.android.internal.R.array.organizationTypes); 146954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project try { 147054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = labels[type - 1]; 147154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } catch (ArrayIndexOutOfBoundsException e) { 1472ae499953ce0e00aae78f374514d4bcc6b99c8354Evan JIANG display = labels[Organizations.TYPE_WORK - 1]; 147354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 147454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } else { 147554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project if (!TextUtils.isEmpty(label)) { 147654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project display = label; 147754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 147854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 147954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project return display; 148054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 148154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 148254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 148354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 148454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1485534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 148654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 148754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/organizations"); 148854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 148954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 149054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The directory twig for this sub-table 149154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1492534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 149354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_DIRECTORY = "organizations"; 149454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 149554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 149654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 149754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1498534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 149954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = "company, title, isprimary ASC"; 150054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 150154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 150254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 150354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Columns from the Photos table that other columns join into themselves. 150454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1505534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 150654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public interface PhotosColumns { 150754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 150854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The _SYNC_VERSION of the photo that was last downloaded 150954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 151054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1511534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 151254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LOCAL_VERSION = "local_version"; 151354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 151454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 151554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The person this photo is associated with. 151654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 151754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1518534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 151954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PERSON_ID = "person"; 152054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 152154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 152254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * non-zero if a download is required and the photo isn't marked as a bad resource. 152354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * You must specify this in the columns in order to use it in the where clause. 152454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER(boolean)</P> 152554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1526534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 152754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DOWNLOAD_REQUIRED = "download_required"; 152854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 152954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 153054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * non-zero if this photo is known to exist on the server 153154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER(boolean)</P> 153254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1533534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 153454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String EXISTS_ON_SERVER = "exists_on_server"; 153554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 153654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 153754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Contains the description of the upload or download error from 153854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * the previous attempt. If null then the previous attempt succeeded. 153954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 154054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1541534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 154254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String SYNC_ERROR = "sync_error"; 154354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 154454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 154554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The image data, or null if there is no image. 154654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: BLOB</P> 154754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1548534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 154954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DATA = "data"; 155054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 155154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 155254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 155354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 155454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The photos over all of the people 155554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1556534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 155754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class Photos implements BaseColumns, PhotosColumns, SyncConstValue { 155854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 155954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 156054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 156154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private Photos() {} 156254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 156354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 156454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 156554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1566534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 156754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 156854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/photos"); 156954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 157054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 157154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The directory twig for this sub-table 157254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1573534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 157454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_DIRECTORY = "photo"; 157554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 157654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 157754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 157854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1579534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 158054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = "person ASC"; 158154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 158254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 1583534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 158454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public interface ExtensionsColumns { 158554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 158654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The name of this extension. May not be null. There may be at most one row for each name. 158754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 158854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1589534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 159054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String NAME = "name"; 159154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 159254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 159354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The value of this extension. May not be null. 159454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: TEXT</P> 159554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1596534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 159754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String VALUE = "value"; 159854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 159954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 160054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 160154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extensions for a person 160254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1603534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 160454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class Extensions implements BaseColumns, ExtensionsColumns { 160554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 160654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * no public constructor since this is a utility class 160754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 160854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project private Extensions() {} 160954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 161054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 161154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The content:// style URL for this table 161254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1613534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 161454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final Uri CONTENT_URI = 161554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project Uri.parse("content://contacts/extensions"); 161654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 161754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 161854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of {@link #CONTENT_URI} providing a directory of 161954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * phones. 162054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1621534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 162254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_extensions"; 162354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 162454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 162554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The MIME type of a {@link #CONTENT_URI} subdirectory of a single 162654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * phone. 162754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1628534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 162954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_extensions"; 1630534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey 163154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 163254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The default sort order for this table 163354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1634534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 163554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String DEFAULT_SORT_ORDER = "person, name ASC"; 163654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 163754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 163854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The ID of the person this phone number is assigned to. 163954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: INTEGER (long)</P> 164054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1641534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 164254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String PERSON_ID = "person"; 164354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 164454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 164554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 164654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Contains helper classes used to create or manage {@link android.content.Intent Intents} 164754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * that involve contacts. 164854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1649534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 165054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class Intents { 1651534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1652534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey public Intents() { 1653534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey } 1654534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey 165554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 165654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * This is the intent that is fired when a search suggestion is clicked on. 165754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1658534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 165954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String SEARCH_SUGGESTION_CLICKED = 1660dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.SEARCH_SUGGESTION_CLICKED; 166154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 166254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 1663dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar * This is the intent that is fired when a search suggestion for dialing a number 166454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * is clicked on. 166554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1666534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 166754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED = 1668dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED; 166954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 167054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 167154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * This is the intent that is fired when a search suggestion for creating a contact 167254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * is clicked on. 167354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1674534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 167554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED = 1676dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED; 167754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 167854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 167954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Starts an Activity that lets the user pick a contact to attach an image to. 168054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * After picking the contact it launches the image cropper in face detection mode. 168154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1682534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1683dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String ATTACH_IMAGE = ContactsContract.Intents.ATTACH_IMAGE; 1684c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project 1685c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project /** 1686c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * Takes as input a data URI with a mailto: or tel: scheme. If a single 1687c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * contact exists with the given data it will be shown. If no contact 1688c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * exists, a dialog will ask the user if they want to create a new 1689c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * contact with the provided details filled in. If multiple contacts 1690c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * share the data the user will be prompted to pick which contact they 1691c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * want to view. 1692c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * <p> 1693c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * For <code>mailto:</code> URIs, the scheme specific portion must be a 1694c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * raw email address, such as one built using 1695c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * {@link Uri#fromParts(String, String, String)}. 1696c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * <p> 1697c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * For <code>tel:</code> URIs, the scheme specific portion is compared 1698c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * to existing numbers using the standard caller ID lookup algorithm. 1699c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * The number must be properly encoded, for example using 1700c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * {@link Uri#fromParts(String, String, String)}. 1701c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * <p> 1702c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * Any extras from the {@link Insert} class will be passed along to the 1703c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * create activity if there are no contacts to show. 1704c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * <p> 1705c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * Passing true for the {@link #EXTRA_FORCE_CREATE} extra will skip 1706c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project * prompting the user when the contact doesn't exist. 1707c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project */ 1708534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1709c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project public static final String SHOW_OR_CREATE_CONTACT = 1710dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.SHOW_OR_CREATE_CONTACT; 1711c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project 1712c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project /** 1713105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project * Used with {@link #SHOW_OR_CREATE_CONTACT} to force creating a new 1714105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project * contact if no matching contact found. Otherwise, default behavior is 1715105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project * to prompt user with dialog before creating. 1716105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project * <p> 1717105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project * Type: BOOLEAN 1718c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project */ 1719534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1720dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String EXTRA_FORCE_CREATE = ContactsContract.Intents.EXTRA_FORCE_CREATE; 1721dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 1722105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project /** 1723105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project * Used with {@link #SHOW_OR_CREATE_CONTACT} to specify an exact 1724105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project * description to be shown when prompting user about creating a new 1725105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project * contact. 1726105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project * <p> 1727105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project * Type: STRING 1728105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project */ 1729534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1730105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project public static final String EXTRA_CREATE_DESCRIPTION = 1731dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.EXTRA_CREATE_DESCRIPTION; 1732c39a6e0c51e182338deb8b63d07933b585134929The Android Open Source Project 173354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 17341132200fa1f545a34f700d6000ded8c8c56134e4Jeff Sharkey * Optional extra used with {@link #SHOW_OR_CREATE_CONTACT} to specify a 17351132200fa1f545a34f700d6000ded8c8c56134e4Jeff Sharkey * dialog location using screen coordinates. When not specified, the 17361132200fa1f545a34f700d6000ded8c8c56134e4Jeff Sharkey * dialog will be centered. 17371132200fa1f545a34f700d6000ded8c8c56134e4Jeff Sharkey * 17381132200fa1f545a34f700d6000ded8c8c56134e4Jeff Sharkey * @hide pending API council review 17391132200fa1f545a34f700d6000ded8c8c56134e4Jeff Sharkey */ 1740534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 17411132200fa1f545a34f700d6000ded8c8c56134e4Jeff Sharkey public static final String EXTRA_TARGET_RECT = ContactsContract.Intents.EXTRA_TARGET_RECT; 17421132200fa1f545a34f700d6000ded8c8c56134e4Jeff Sharkey 17431132200fa1f545a34f700d6000ded8c8c56134e4Jeff Sharkey /** 174454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Intents related to the Contacts app UI. 174554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1746534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 174754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class UI { 1748534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1749534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey public UI() { 1750534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey } 1751534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey 175254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 175354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The action for the default contacts list tab. 175454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1755534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1756dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String LIST_DEFAULT = ContactsContract.Intents.UI.LIST_DEFAULT; 175754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 175854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 175954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The action for the contacts list tab. 176054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1761534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 176254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LIST_GROUP_ACTION = 1763dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.UI.LIST_GROUP_ACTION; 176454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 176554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 176654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * When in LIST_GROUP_ACTION mode, this is the group to display. 176754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1768534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1769dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String GROUP_NAME_EXTRA_KEY = 1770dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.UI.GROUP_NAME_EXTRA_KEY; 177154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 177254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The action for the all contacts list tab. 177354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1774534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 177554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LIST_ALL_CONTACTS_ACTION = 1776dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.UI.LIST_ALL_CONTACTS_ACTION; 177754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 177854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 177954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The action for the contacts with phone numbers list tab. 178054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1781534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 178254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LIST_CONTACTS_WITH_PHONES_ACTION = 1783dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.UI.LIST_CONTACTS_WITH_PHONES_ACTION; 178454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 178554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 178654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The action for the starred contacts list tab. 178754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1788534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 178954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LIST_STARRED_ACTION = 1790dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.UI.LIST_STARRED_ACTION; 179154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 179254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 179354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The action for the frequent contacts list tab. 179454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1795534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 179654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LIST_FREQUENT_ACTION = 1797dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.UI.LIST_FREQUENT_ACTION; 179854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 179954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 180054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The action for the "strequent" contacts list tab. It first lists the starred 180154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * contacts in alphabetical order and then the frequent contacts in descending 180254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * order of the number of times they have been contacted. 180354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1804534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 180554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String LIST_STREQUENT_ACTION = 1806dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.UI.LIST_STREQUENT_ACTION; 180754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 180854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 180954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * A key for to be used as an intent extra to set the activity 181054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * title to a custom String value. 181154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1812534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 181354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final String TITLE_EXTRA_KEY = 1814dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.UI.TITLE_EXTRA_KEY; 1815dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 181654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 181754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Activity Action: Display a filtered list of contacts 181854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <p> 181954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Input: Extra field {@link #FILTER_TEXT_EXTRA_KEY} is the text to use for 182054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * filtering 182154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <p> 182254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Output: Nothing. 182354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1824534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1825dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String FILTER_CONTACTS_ACTION = 1826dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.UI.FILTER_CONTACTS_ACTION; 1827dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar 182854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 182954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Used as an int extra field in {@link #FILTER_CONTACTS_ACTION} 183054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * intents to supply the text on which to filter. 183154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1832534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1833dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String FILTER_TEXT_EXTRA_KEY = 1834dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.UI.FILTER_TEXT_EXTRA_KEY; 183554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 183654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 183754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 183854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Convenience class that contains string constants used 183954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * to create contact {@link android.content.Intent Intents}. 184054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1841534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 184254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project public static final class Insert { 1843534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1844534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey public Insert() { 1845534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey } 1846534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey 184754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** The action code to use when adding a contact */ 1848534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1849dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String ACTION = ContactsContract.Intents.Insert.ACTION; 1850534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey 185154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 185254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * If present, forces a bypass of quick insert mode. 185354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1854534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1855dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String FULL_MODE = ContactsContract.Intents.Insert.FULL_MODE; 1856534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey 185754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 185854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the contact name. 185954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: String</P> 186054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1861534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1862dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String NAME = ContactsContract.Intents.Insert.NAME; 186354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 186454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 1865b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * The extra field for the contact phonetic name. 1866b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * <P>Type: String</P> 1867b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project */ 1868534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1869dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String PHONETIC_NAME = 1870dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.PHONETIC_NAME; 1871b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project 1872b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project /** 187354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the contact company. 187454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: String</P> 187554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1876534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1877dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String COMPANY = ContactsContract.Intents.Insert.COMPANY; 187854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 187954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 188054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the contact job title. 188154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: String</P> 188254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1883534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1884dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String JOB_TITLE = ContactsContract.Intents.Insert.JOB_TITLE; 188554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 188654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 188754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the contact notes. 188854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: String</P> 188954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1890534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1891dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String NOTES = ContactsContract.Intents.Insert.NOTES; 189254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 189354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 189454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the contact phone number. 189554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: String</P> 189654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1897534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1898dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String PHONE = ContactsContract.Intents.Insert.PHONE; 189954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 190054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 190154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the contact phone number type. 190254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: Either an integer value from {@link android.provider.Contacts.PhonesColumns PhonesColumns}, 1903b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * or a string specifying a custom label.</P> 190454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1905534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1906dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String PHONE_TYPE = ContactsContract.Intents.Insert.PHONE_TYPE; 190754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 190854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 190954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the phone isprimary flag. 191054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: boolean</P> 191154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1912534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1913dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String PHONE_ISPRIMARY = 1914dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.PHONE_ISPRIMARY; 191554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 191654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 1917f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * The extra field for an optional second contact phone number. 1918f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * <P>Type: String</P> 1919f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project */ 1920534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1921dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String SECONDARY_PHONE = 1922dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.SECONDARY_PHONE; 1923f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project 1924f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project /** 1925f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * The extra field for an optional second contact phone number type. 1926f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * <P>Type: Either an integer value from {@link android.provider.Contacts.PhonesColumns PhonesColumns}, 1927b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * or a string specifying a custom label.</P> 1928f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project */ 1929534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1930dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String SECONDARY_PHONE_TYPE = 1931dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.SECONDARY_PHONE_TYPE; 1932f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project 1933f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project /** 1934f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * The extra field for an optional third contact phone number. 1935f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * <P>Type: String</P> 1936f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project */ 1937534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1938dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String TERTIARY_PHONE = 1939dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.TERTIARY_PHONE; 1940f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project 1941f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project /** 1942f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * The extra field for an optional third contact phone number type. 1943f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * <P>Type: Either an integer value from {@link android.provider.Contacts.PhonesColumns PhonesColumns}, 1944b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * or a string specifying a custom label.</P> 1945f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project */ 1946534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1947dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String TERTIARY_PHONE_TYPE = 1948dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.TERTIARY_PHONE_TYPE; 1949f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project 1950f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project /** 195154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the contact email address. 195254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: String</P> 195354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1954534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1955dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String EMAIL = ContactsContract.Intents.Insert.EMAIL; 195654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 195754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 195854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the contact email type. 195954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: Either an integer value from {@link android.provider.Contacts.ContactMethodsColumns ContactMethodsColumns} 1960b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * or a string specifying a custom label.</P> 196154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1962534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1963dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String EMAIL_TYPE = ContactsContract.Intents.Insert.EMAIL_TYPE; 196454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 196554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 196654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the email isprimary flag. 196754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: boolean</P> 196854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 1969534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1970dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String EMAIL_ISPRIMARY = 1971dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.EMAIL_ISPRIMARY; 197254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 197354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 1974f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * The extra field for an optional second contact email address. 1975f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * <P>Type: String</P> 1976f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project */ 1977534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1978dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String SECONDARY_EMAIL = 1979dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.SECONDARY_EMAIL; 1980f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project 1981f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project /** 1982f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * The extra field for an optional second contact email type. 1983f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * <P>Type: Either an integer value from {@link android.provider.Contacts.ContactMethodsColumns ContactMethodsColumns} 1984b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * or a string specifying a custom label.</P> 1985f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project */ 1986534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1987dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String SECONDARY_EMAIL_TYPE = 1988dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.SECONDARY_EMAIL_TYPE; 1989f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project 1990f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project /** 1991f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * The extra field for an optional third contact email address. 1992f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * <P>Type: String</P> 1993f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project */ 1994534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 1995dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String TERTIARY_EMAIL = 1996dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.TERTIARY_EMAIL; 1997f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project 1998f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project /** 1999f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * The extra field for an optional third contact email type. 2000f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project * <P>Type: Either an integer value from {@link android.provider.Contacts.ContactMethodsColumns ContactMethodsColumns} 2001b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * or a string specifying a custom label.</P> 2002f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project */ 2003534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 2004dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String TERTIARY_EMAIL_TYPE = 2005dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar ContactsContract.Intents.Insert.TERTIARY_EMAIL_TYPE; 2006f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project 2007f013e1afd1e68af5e3b868c26a653bbfb39538f8The Android Open Source Project /** 200854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the contact postal address. 200954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: String</P> 201054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 2011534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 2012dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String POSTAL = ContactsContract.Intents.Insert.POSTAL; 201354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 201454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 201554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the contact postal address type. 201654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: Either an integer value from {@link android.provider.Contacts.ContactMethodsColumns ContactMethodsColumns} 2017b798689749c64baba81f02e10cf2157c747d6b46The Android Open Source Project * or a string specifying a custom label.</P> 201854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 2019534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 2020dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String POSTAL_TYPE = ContactsContract.Intents.Insert.POSTAL_TYPE; 202154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 202254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 202354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the postal isprimary flag. 202454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: boolean</P> 202554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 2026534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 2027dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String POSTAL_ISPRIMARY = ContactsContract.Intents.Insert.POSTAL_ISPRIMARY; 202854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 202954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 203054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for an IM handle. 203154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: String</P> 203254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 2033534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 2034dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String IM_HANDLE = ContactsContract.Intents.Insert.IM_HANDLE; 203554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 203654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 203754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the IM protocol 203854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: the result of {@link Contacts.ContactMethods#encodePredefinedImProtocol} 203954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * or {@link Contacts.ContactMethods#encodeCustomImProtocol}.</P> 204054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 2041534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 2042dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String IM_PROTOCOL = ContactsContract.Intents.Insert.IM_PROTOCOL; 204354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project 204454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project /** 204554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * The extra field for the IM isprimary flag. 204654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * <P>Type: boolean</P> 204754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */ 2048534aa012b5063abeaa36b9ade69851add8b7a48fJeff Sharkey @Deprecated 2049dc2da5fd922fc8de0ffcb22df3622b57ed777732Evan Millar public static final String IM_ISPRIMARY = ContactsContract.Intents.Insert.IM_ISPRIMARY; 205054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 205154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project } 205254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project} 2053