Véase la sección sobre Agregación automática de datos de contacto en el Uso de la API de contactos de los recursos técnicos de la Desarrolladores de Android sitio.
Como explica el artículo:
Cuando se añade o modifica un contacto sin procesar, el sistema busca contactos sin procesar coincidentes (superpuestos) con los que agregarlo. Puede que no encuentre ningún contacto bruto coincidente, en cuyo caso creará un contacto agregado que contenga sólo el contacto bruto original. Si encuentra una sola coincidencia, crea un nuevo contacto que contiene los dos contactos brutos. Y puede incluso encontrar varios contactos brutos similares, en cuyo caso elige el más parecido.
Se considera que dos contactos brutos coinciden si se cumple al menos una de estas condiciones:
- Tienen nombres que coinciden.
- Sus nombres consisten en las mismas palabras pero en diferente orden (por ejemplo,
"Bob Parr"
y "Parr, Bob"
)
- Uno de ellos tiene un nombre corto común para el otro (por ejemplo,
"Bob Parr"
y "Robert Parr"
)
- Uno de ellos tiene sólo un nombre o un apellido y coincide con el otro contacto bruto. Esta regla es menos fiable, por lo que sólo se aplica si los dos contactos brutos comparten también algún otro dato como un número de teléfono, una dirección de correo electrónico o un apodo (por ejemplo,
Helen ["elastigirl"] = Helen Parr ["elastigirl"]
)
- Al menos a uno de los dos contactos en bruto le falta el nombre por completo y comparten un número de teléfono, una dirección de correo electrónico o un apodo (por ejemplo,
Bob Parr [incredible@android.com] = incredible@android.com
).
Al comparar nombres, el sistema ignora las diferencias entre mayúsculas y minúsculas (Bob=BOB=bob)
y los signos diacríticos (Hélène=Helene)
. Al comparar dos números de teléfono, el sistema ignora los caracteres especiales como "*"
, "#"
, "(", ")"
y los espacios en blanco. Además, si la única diferencia entre dos números es que uno tiene un código de país y el otro no, el sistema considera que coinciden (excepto los números del código de país de Japón)
La agregación automática no es permanente; cualquier cambio de un contacto bruto constitutivo puede crear un nuevo agregado o romper uno existente.
A continuación, el artículo explica los distintos modos que una aplicación puede asignar al contactos brutos que crea. Dependiendo del modo, el sistema
- Agregue automáticamente el contacto a medida que se encuentren similitudes con otros contactos. Cuando las similitudes ya no existan, estas agregaciones se eliminarán.
- Nunca agregue el contacto con ningún otro.
- No realizar ninguna otra agregación en un contacto, incluso si ese contacto cambia de tal manera que sería sacado de un grupo agregado.
Además de esta agregación automática, las aplicaciones también pueden configurar manualmente los contactos agregados. En estos casos, el algoritmo depende de la aplicación.
Por último, puede unir manualmente los contactos en el Gente editando uno de los dos contactos y seleccionando Join
en el menú de desbordamiento.