Así es como puedes (intentar) restaurar tus contactos manualmente. (NOTA: Estoy asumiendo un poco de conocimiento de Linux. He tratado de cubrir las cosas que son difíciles de buscar, pero poco más).
En primer lugar, activa el modo de depuración USB y conecta el teléfono al ordenador. A continuación,
- Busca la carpeta que contiene tus copias de seguridad. Por defecto, creo que es algo así como
/sdcard/TitaniumBackup
. Si ha utilizado una ubicación personalizada (por ejemplo, para almacenar las copias de seguridad en una tarjeta SD externa), entonces debería ser fácil de encontrar.
- Debería haber un tarball comprimido con un nombre similar a
com.android.providers.contacts-<date>.tar.gz
. Cópialo en tu ordenador con adb pull
.
- Descomprime el archivo que acabas de sacar. Ahora debería haber una carpeta llamada
data
. Descender a data/data/com.android.providers.contacts/databases/
. Allí encontrará contacts2.db
y profile.db
. Utilice adb push
para subirlas a tu teléfono. (Nota: Probablemente tendrás que empujarlos a una ubicación que no requiera acceso Root).
(Para los siguientes pasos, es posible que quieras reiniciar en modo de recuperación, para asegurarte de que tu teléfono no está utilizando tu base de datos de contactos. Usted puede hacer esto fácilmente usando adb reboot recovery
.)
- Inicie un shell con adb de nuevo, y escale a Root usando
su
. cd
a /data/data/com.android.providers.contacts/databases/
. Renombrar contacts2.db
a contacts2.db.cm
y profile.db
a profile.db.cm
.
- Copie los archivos que empujó a
/data/data/com.android.providers.contacts/databases/
para que sustituyan a los que acaba de renombrar.
- Asegúrese de que sus nuevos archivos tienen los mismos permisos que los antiguos. Compruebe los permisos de
contacts2.db.cm
y profile.db.cm
con ls -l
y cambiar los permisos de sus archivos con chown
. Compruebe las etiquetas SELinux con ls -Z
y cambiarlos si es necesario con chcon <full label> <file>
.
- Reinicia y mira si ha funcionado.
Espero que este método te funcione. Debo admitir que cuando lo probé, CyanogenMod revirtió inmediatamente mis cambios (de tal manera que contacts2.db
coincidía con el original contacts2.db.cm
). Si este método no funciona, y usted realmente desea utilizar CyanogenMod, entonces todavía puede recuperar los datos de contacts2.db
e intenta añadir todos tus contactos a mano.
- Instalar
sqlite3
.
- Ejecutar
sqlite3 contacts2.db
.
- Sus números de teléfono están en la tabla denominada
phone_lookup
y los nombres de la pantalla se pueden recuperar de la tabla denominada raw_contacts
. Puedes ver (al menos algunos) de tus contactos ejecutando
select raw_contacts.display_name, phone_lookup.normalized_number from raw_contacts inner join phone_lookup on raw_contacts._id = phone_lookup.raw_contact_id;
0 votos
¿Tienes la copia de seguridad de la aplicación Contacts Storage o Contacts Provider? Esa aplicación guarda los contactos en la base de datos llamada contacts2.db. Mientras la base de datos no esté dañada, borrar los datos de esa aplicación, restaurar los datos desde Titanium y reiniciar debería funcionar. Si no, extrae la base de datos de la copia de seguridad, fuerza la detención de la aplicación, ve al directorio de datos de la aplicación y reemplaza la base de datos allí. Reinicie y vea lo que sucede.
0 votos
Eso es lo que hice... restaurar desde titanium.. pero la cosa es que ahora con CM12, tengo Contact 5.1, y el antiguo era Contact 4.1.2. Así que eso es posiblemente un problema que supongo..