PDA

Ver la Versión Completa : Consulta Quitar la R de Roaming


McGiverGim
26/04/11, 14:20:58
EDICION: Nuevo hilo con posible solución, por si no queréis leer este completo: http://www.htcmania.com/showthread.php?t=337565

Ya tengo aquí mi O2x y ya he empezado a trastear. A ver si alguno me puede ayudar.

Quiero quitar la R de Roaming que aparece con los Operadores Móviles Virtuales (Simyo, Yoigo, etc.). En el Galaxy S de donde vengo se consiguió añadiendo un archivo a system/etc. Mas info en:

http://www.htcmania.com/showthread.php?t=196588

He probado lo mismo en el LG y lamentablemente no funciona. ¿Alguien tiene alguna idea más?

Saludos!

McGiverGim
27/04/11, 08:17:01
Sigo investigando. He visto por ahí que para que el archivo spn-conf.xml sirva de algo, los mismos APN deben estar configurados en el apns-conf.xml.

He mirado nuestro apns-conf.xml y no vienen ahí los APN de nuestro móvil. ¿Sabéis donde los tiene configurados el LG? Parece que ignora totalmente lo que ponga en el apns-conf.xml...

Saludos!

McGiverGim
05/05/11, 14:03:24
Simplemente avisar que sigo con pruebas para este tema, por si alguien sabe algo...

Edito mi propio mensaje para decir que toda la información de APN's está en una base de datos sqlite, en un archivo llamado telephony.db, pero no sé si se podrá llegar a especificar la información necesaria para evitar la R...

McGiverGim
06/05/11, 11:08:06
Por si alguien anda siguiendo mis investigaciones, aquí pongo lo que he descubierto hasta la fecha:

- Para evitar la R hay un tutorial basado en modificar los archivos apns-conf.xml y spn-conf.xml
- Parece ser que LG ignora, por defecto, estos archivos
- La base de datos /data/data/com.android.providers.telephony/databases/telephony.db es la que tiene la información de los APN, y por eso no hace caso al archivo apns-conf.xml ni al spn-conf.xml
- Si modificas la BD anterior con algún editor de sqlite, puedes modificar el nombre del APN, etc. Pero no están los campos para especificar los datos del spn-conf.xml. En especial el fake_home_on que es el que nos interesa.
- Si eliminas el archivo telephony.db, en el siguiente arranque vuelve a generarlo tal como estaba (no sé de donde saca los datos), y le añade al final los datos del apns-conf.xml, pero parece que sigue ignorando el contenido del spn-conf.xml

Siguientes objetivos: intentar averiguar de donde saca el contenido inicial del telephony.db

Si a alguien se le ocurre alguna prueba que comente ;-)

GUADAX
06/05/11, 12:28:52
Buena info muchas gracias.

McGiverGim
07/05/11, 16:14:38
La investigación continúa: ya he encontrado de donde se cargan inicialmente los apns, lo hacen de un archivo llamado apns.xml que está dentro del archivo framework-res.apk

El problema es que en ese archivo no hay ningún archivo para los spn, así que de momento no me sirve de mucho..

Inotalas
28/05/11, 20:44:00
...

jj0809
16/07/11, 23:07:03
He estado indagando un poco y he descubierto que el este teléfono posee un archivo .db (base de datos), que es donde guarda las operadoras,las redes,país,etc.,pero no consigo modificar el fichero.Lo he copiado con el rootexplorer y lo he intento abrir con varias programas de bases de datos sin resultado.
Creo que la solución puede estar en asignar a simyo en este archivo de base de datos,pero yo, ahora mismo, no sé como se puede modificar y no tengo tiempo para aprender a hacerlo,si alguien quiere intentarlo la ruta es la siguiente:

system/etc/flex

Dentro de esta carpeta hay 2 archivos uno es flex.db y el otro el el flex.xml,he modificado el xml con los valores de simyo pero sigue marcando la R.

Se que igual sirve de poco pero por lo menos sabemos donde tiene los operadores de red.

joseignaciobp
16/07/11, 23:31:29
conoces el geeksphone?

ellos han hecho una modificación en sus teléfonos android para hacer precisamente esto, que los omv no aparezcan como roaming

por qué no te pasas por su foro y preguntas?

saludos!

McGiverGim
26/07/11, 07:58:48
Geeksphone, que yo sepa, está basado en Cyanogenmod, por lo menos las últimas versiones. En las opciones de configuración de esta ROM se puede hacer, pero no tiene nada que ver con el LG. De todos modos si tienes algún enlace con más información le daré un vistazo...

He mirado los archivos de system/etc/flex. No he visto nada en ninguno de los dos que me pueda "indicar" que manipulando este archivo se quite la R. Para editar el flex.db es más fácil hacerlo con la aplicación "sqllite editor" directamente desde el telefono. Dale un vistazo a ver si ves algo más que yo...

Saludos!

revelatio
26/07/11, 09:13:30
Una pregunta.. la R de Roaming es simplemente una imagen en la barra? o es algo más? es que nunca lo tengo activado y ahora estoy con la MIUI.. jejeje

McGiverGim
26/07/11, 12:42:43
Si te aparece la R de roaming, tienes que tener activados los datos en roaming para poder conectar a internet, con el riesgo que ello conlleva cuando te mueves por la frontera o vas al extranjero...

McGiverGim
03/08/11, 09:29:13
Por si alguien quiere probar... me acabo de instalar la ROM Gingerbread filtrada y que Modaco ha convertido en su GR2. He visto que esta ROM ya tiene los APN's configurados en el archivo apns-conf.xml (vamos, que se parece más a lo que yo esperaba inicialmente y a como lo tienen otros teléfonos).

He modificado ligeramente este, para añadir el valor numeric, y he añadido el spn-conf.xml a esta versión, pero sigue apareciendo la R de Roaming. No sé si me he equivocado en algo pero como no da error va a ser dificil de saber, pero si alguien lo quiere intentar, así tendríamos dos confirmaciones...

Saludos!

fortunados
12/01/12, 19:24:15
Me pregunto si le has encontrado solucion a esto porque yo acabo de flashear una rom y ya lo he provado todo y sigo con el mismo problema
Un saludo.

McGiverGim
13/01/12, 07:44:52
Hola. He seguido buscando info por la red, y probando soluciones en las nuevas ROM, todo sin suerte.

Así que de momento parece ser que no hay solución...

balsamo
16/02/12, 00:31:48
Yo tambien estoy igual,
muchas gracias por tus investigaciones, yo tambien he estado peleando con lo mismo antes de conocer este hilo,y mis conclusiones eran practicamente las mismas, hasta que hay un punto que no se sabe como seguir

A mi me parece que ademas de poner la "r" de las narices, ademas, es como si fuese mas reticente a cambiar de red por estar en roaming. Con lo que pierdo la señal con frecuencia

Mi telefono es un lg 920, pero veo que en sistema de archivos, llevan exactamente lo mismo


Si descubres algo mas hazmelo saber

Un saludo ;)

McGiverGim
16/02/12, 07:50:49
Hola. La verdad lo tengo un poco abandonado el tema... simplemente esperando nuevas versiones de ROM para probar si han cambiado algo... con las versiones actuales me he quedado sin ideas...

Saludos!

balsamo
16/02/12, 13:07:18
Hola otra vez, he adelantado en algo, aunque aun no tengo la solucion completa, pero he sacado algunas conclusiones

Realmente el telefono SI QUE LEE el spn-conf.xml

De hecho, se pueden hacer un par de cosas con el

Lo primero es averiguar tu MCC y MCC de IMSI
Es decir, los codigos operador QUE HAY EN TU TARJETA
Esto lo averiguamos con el programa MCC/MCN Checker for JP que encontrareis en el market
Es gratuito, y ocupa menos de 500k, al abrirlo vereis que sale
getSimOperator y getNetworkOperator
A nosotros nos interesa el getSimOperator, que es el codigo que tiene nuestra tarjeta, sin importar si simyo, movistar o paca la flaca son tal o cual codigo

En mi caso, el simOperator es 21419, asi que lo usare en el ejemplo, pero vosotros pondreis el que os salga

A todo esto teneis que crear un archivo llamado spn-conf.xml, que podreis editar y crear con el mismo notepad del windows, pero con la precaucion de al guardarlo por primera vez poner que se guarde con codificacion UTF-8

Dentro del archivo pondreis esto


<?xml version="1.0" encoding="utf-8"?>
<spnOverrides>

<spnOverride numeric="21419" spn="Balsamo es el mejor" fake_home_on="214"/>

</spnOverrides>


y lo guardais, poniendo donde yo he puesto el 21419 el codigo que sacasteis con el otro programa y en spn podeis poner lo que querais, o dejarlo asi que no esta mal ;)

Lo guardais en la carpeta system/etc/ y REINICIAIS EL TELEFONO


A la ultima orden (fake_home_on) vereis que no le hace ni **** caso, pero en cambio, vereis que si que coje el nuevo nombre del operador ;)


Conclusion, si que lee el archivo, y ademas esto MOLA ;)


saludos

McGiverGim
16/02/12, 13:13:35
Supongo que hablas en Ginger... en Ginger si que observé que parece que si hace caso a los archivos iniciales (aunque no llegué a hacer tu prueba de cambiar el nombre XDDDDD )... en Froyo los ignora totalmente.

Volveré a darle un vistazo, a ver si saco algo en claro, pero la base de datos que alimenta con estos datos no parece que tenga ningún campo similar a fake_home_on... estaría bien tener un galaxy s rooteado para comparar estas bases de datos, a ver si es necesario que tengan este campo o no...

Saludos!

balsamo
16/02/12, 13:17:57
y si sustituis

spn="Balsamo es el mejor"
por
spn_display_rule="SPN_RULE_SHOW_PLMN"

solo os mostrara el nombre del operador de la tarjeta, no de la red, es decir, que al mirar el menu de notificaciones, solo os aparecera un nombre ;)

McGiverGim
16/02/12, 14:41:46
Por si quieres más datos, te paso los parámetros que puede tener el archivo spn (en ingles, eso si):

numeric: MCC+MNC from IMSI - this attribute is used as the key
imsi_subset: this attribute is used as a imsi filter (imsi format is: [MCC][MNC][imsi_subset][rest of imsi]) - the longest matching imsi_subset is a best match
spn: spn to show instead of EFSPN. locales can be specified here too, if needed
spn_display_rule: SPN_RULE_SHOW_SPN, SPN_RULE_SHOW_PLMN or both
fake_home_on: regard specified PLMN as home
fake_roaming_on: regard specified PLMN as roaming (comma-separated list)

McGiverGim
17/02/12, 08:34:58
Por si te sirve, he investigado más:

He buscado por el código fuente de Android, y la única clase que he encontrado que acceda al archivo spn-config.xml es una clase llamada SpnOverride.java. Te pongo aquí un enlace de ejemplo:

http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/2.3.6_r1/com/android/internal/telephony/gsm/SpnOverride.java#SpnOverride

Si te fijas, en las líneas 82 y 83 almacena los valores de "numeric" y "spn", pero no almacena ninguno más (en especial el fake_home_on, que es el que nos interesa).

El tema está en que por lo que tu comentas, al spn_display_rule también le hace caso, pero no soy capaz de encontrar exactamente donde lee este valor (aunque hace referencia a su valor en SimRecords.java):

http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/2.3.6_r1/com/android/internal/telephony/gsm/SIMRecords.java#SIMRecords.getDisplayRule%28java.l ang.String%29

Estaría bien encontrar este tipo de clases para poder comparar entre los fuentes por ejemplo del Samsung Galaxy S, que si hace caso a quitar la R de roaming, y nuestro LG, que no hace caso.

McGiverGim
17/02/12, 10:44:31
Al final una posible solución:

En lugar de usar el archivo spn (que en principio como he comentado no lee más que lo que he puesto), parece ser que modaco ya hizo unas modificaciones en sus ROM para permitir esto. En XDA se comenta:

http://forum.xda-developers.com/showthread.php?t=1483419

Y enlaza con el hilo de modaco:

http://android.modaco.com/topic/342267-universal-mvno-patch/page__p__1739302#entry1739302

Se basa en modificar el método isRoamingBetweenOperators() de la clase GsmStateServiceTracker...

La parte dificil: hay que coger el archivo framework.jar de la ROM, decompilarlo, modificarlo y meterlo todo dentro de nuevo...

Si puedo (y es posible) lo intentaré hoy con mi ROM, una v20o, a ver que sale...

McGiverGim
20/02/12, 09:08:17
¡¡¡Lo tengo!!! O eso parece. Falta probar con alguna SIM extranjera para ver si detecta el roaming real correctamente o no. Pero ahora con Simyo no aparece la dichosa R de roaming y puedo tener datos sin activar la opción de datos en roaming...

Gracias a leromarinvit del foro de Modaco, he conseguido quitar la R de roaming. En cuanto pueda subiré las modificaciones para la ROM v20q y pondré las instrucciones para cualquier ROM, pero toda la info está aquí:

http://android.modaco.com/topic/342267-universal-mvno-patch/

Saludos!

makedaes
20/02/12, 09:36:06
¡¡¡Lo tengo!!! O eso parece. Falta probar con alguna SIM extranjera para ver si detecta el roaming real correctamente o no. Pero ahora con Simyo no aparece la dichosa R de roaming y puedo tener datos sin activar la opción de datos en roaming...

Gracias a leromarinvit del foro de Modaco, he conseguido quitar la R de roaming. En cuanto pueda subiré las modificaciones para la ROM v20q y pondré las instrucciones para cualquier ROM, pero toda la info está aquí:

http://android.modaco.com/topic/342267-universal-mvno-patch/

Saludos!


Hola, perdona mi ignorancia pero podrias decirme para que sirve esto?¿


gracias.

McGiverGim
20/02/12, 11:13:59
He hecho un hilo nuevo en el foro de desarrollo, donde respondo a tu pregunta y doy las instrucciones para probarlo...

http://www.htcmania.com/showthread.php?p=3872680

teniente_dan
20/02/12, 12:33:50
continuamos en el hilo que has creado

salu2