5 votos

¿Puedo cambiar la SIM que usa un teléfono para su interfaz LTE usando ADB?

Tengo un conjunto de teléfonos que tienen doble tarjeta SIM. Lo que me gustaría hacer es tenerlos conectados a una red usando la tarjeta SIM 1, ejecutar alguna prueba, desconectarlos de la red, y luego tenerlos conectados a una segunda red usando la tarjeta SIM 2. ¿Hay alguna manera de hacer esto a través de ADB? Preferiblemente sin acceso Root, pero si eso no es posible, entonces con acceso Root está bien.

4voto

Carmeister Puntos 89

Este post no recibió mucha atención, así que no sé si vale la pena publicar la respuesta, pero encontré una solución.

No sabía al publicar esto que la solución depende de la versión de Android. En mi caso, los teléfonos tienen Android 9 (Pie).

El comando que encontré para activar/desactivar las tarjetas SIM es:

adb shell service call phone 180 i32 X i32 Y

donde X es el número de la tarjeta SIM (1 y 2, en mi caso) e Y es 1 para activar y 0 para desactivar.

Si alguien está interesado, encontré la solución escarbando en el código fuente en Android.googlesource.com. Una vez que encontré la interfaz para ITelephony (era un archivo .aidl), tuve que contar las funciones, porque el número 180 en el comando significaba la función número 180 en ese archivo. También deduje los argumentos i32 X i32 Y de los argumentos de esa función. La respuesta aquí me ayudó mucho: https://stackoverflow.com/questions/20227326/where-to-find-info-on-androids-service-call-shell-command .

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X