Os cuento. En mi Ipad2, terminal que uso con poca regularidad, y desde el que nunca navego por sitios rarunos, tenía aún la versión 5.1.1 de IOS. Por supuesto, y para poder hacer varias cositas, lo tenía con Jailbreak. Siempre que sale una nueva versión de IOS, me suelo esperar unos días para ver si a otros usuarios les da problemas, los mapas hacen cosas raras, los calendarios dejan de funcionar, consume más batería de lo habitual, etc,… Y por supuesto, si necesito tener el terminal con Jailbreak, que exista esa posibilidad de forma untethered.
Por cosas de la vida, en el Ipad lo dejé estar, hasta que esta semana dije: de hoy no pasa. Además, no me hace falta ya hacerle Jailbreak, por lo que me quedo mucho más tranquilo y seguro si instalo el último firmware IOS que disponga Apple, sin hacerle cosas raras.
Mi dispositivo tiene 3G pero, debido a la tarifa que tengo con el operador Simyo, no es plana, sino que pago por la cantidad de datos consumidos, uso los datos en modo 3G siempre que estoy fuera, utilizando mi configuración de Wifi + VPN IPSec dentro de mi casa.
Así que al hacer la actualización de la 5.1.1 a la 6.1.2, sin saber nada al respecto, dejé los datos y 3G apagados. La actualización fue totalmente correcta, el backup anterior hecho con iTunes se restauró perfectamente, excepto que cuando fuí a probar el 3G, la conexión se hacía por GPRS. Como sabéis en IOS 6.X, para Ipad, no existe el toggle habilitar/deshabilitar 3G, cosa que no pasa en IOS 6.X para Iphone. Probando con una tarjeta SIM de otro operador, el resultado era el mismo.
Googleando, varias soluciones sugerían volver atrás, a la versión 5.1.1 habilitar el 3G y actualizar a 6.1.2 con el 3G habilitado. Como sabréis, si no has tenido el terminal Jailbreakeado, y se han guardado los SHSH blobs, no hay manera de hacer downgrade. Probé de mil maneras y no me fue posible. Sin embargo, me di cuenta que reinstalando la versión 6.1.2 limpia, sin restaurar mi backup anterior, el 3G sí que funcionaba.
Así que como opción, podría configurar tooooodos mis servicios (correos, calendarios, tonos, etc, etc,…) y partir de esta versión nueva. Uffff qué cantidad de trabajo… pero venga, manos a la obra. Según iba personalizando el equipo, me encontré con otro problema. Mis contactos están en un servidor CardDav. Por cosas de la vida, la versión 6.1.2 envía algún mensaje que no le gusta al servidor CardDav en la primera configuración. Sin embargo, si parto de la versión con el backup importado (la que me deja el terminal sin 3G) la adición, supresión y modificación de contactos en la agenda, funciona bien. Armado de tcpdump por medio, y tirando de los logs del servidor, estuve analizando cuál era el problema, pero no dí con la solución. Entonces, estaba en un callejón sin salida: me quedo con mis contactos o con el 3G. Para empezar y siendo las 3AM, me fuí a la cama y ya lo pensaré mañana.
Al día siguiente, hice un backup (sin cifrar) de la instalación limpia en otro ordenador con iTunes, y me dispuse a analizar con Iphone Backup Analyzer ambos backups en busca del puñetero fichero de preferencias que, al importarlo, recuperaba el flag 3G deshabilitado. Navegando entre montones de SQLites y ficheros .plist, se me ocurrió otra cosa. ¿Y si llamo a soporte técnico de Apple? ¿No puede ser peor que lo de Enjuto Mojamuto no? Busqué el teléfono con prefijo 91 equivalente al número 902 (con coste), y llamé. Efectivamente, el soporte de Apple no tenía constancia de ese bug, por lo que me ofrecieron que empezara de cero con la configuración y ya está. A lo largo de esa llamada se me ocurrió la solución al problema.
Cuando haces jailbreak al dispositivo, puedes instalar desde Cydia un programa indispensable llamado SBSettings. Esto te añade una bandeja con Toggles en la parte superior del dispositivo, que te permite, entre otras cosas, habilitar/deshabilitar los datos, el Wifi, bluetooth o el 3G.
Solución: Hago un jailbreak usando Evasi0n al Ipad con 6.1.2, instalo SBSettings, habilito el 3G, hago un backup con iTunes, reinstalo 6.1.2 desde cero e importo el nuevo backup.