Red de conocimiento informático - Computadora portátil - El teléfono Android lee la información de la tarjeta SIM

El teléfono Android lee la información de la tarjeta SIM

Los teléfonos móviles y el wifi han cambiado el estilo de vida de las personas y se han convertido en necesidades vitales. Los números de teléfonos móviles y las cuentas de banda ancha se han convertido en una parte importante de la competencia entre operadores. La demanda de teléfonos móviles con doble SIM y doble modo de espera está aumentando gradualmente. La mayoría de los fabricantes de teléfonos móviles han cambiado sus principales teléfonos móviles a Netcom completo con doble SIM y doble modo de espera. , mientras que los operadores Después de ocupar la tarjeta SIM principal, el deseo por la SIM 2 también está creciendo, y la necesidad de obtener información de la SIM 2 también está creciendo. Solo conociéndose a uno mismo y al enemigo se puede salir victorioso y tomar la iniciativa.

Aquí hay una breve introducción a cómo los teléfonos Android leen la información de la tarjeta Sim

Puedes consultar a través de ContentProvider

Utiliza la clase SubscriptionManager para leer información

Consulta a través de la instancia SubscriptionInfo

El siguiente es el código fuente de esta clase:

Esta clase no tiene valores IMEI e IMSI comunes de teléfonos móviles y se puede leer TelephonyManager, pero debe reflejarse, consulte la siguiente introducción a TelephonyManager

Utilice TelephonyManager para leer la información de la tarjeta SIM:

En la mayoría de los casos, solo necesitamos 1 parámetro para leer el información de la subtarjeta, es decir, slotId o subId, los métodos del código fuente son los siguientes (nos centramos principalmente en IMEI e IMSI, nos fijamos principalmente en los métodos getDeviceId y getSubscriberId):

Puedes ver que los valores ​​​​Todos estos métodos en el código fuente son consistentes con IMEI e IMSI. Vemos que el parámetro @hide se ha agregado al código fuente de estos métodos, por lo que no se pueden llamar directamente aquí. Se requiere reflexión:

Ahora puede llamar al método a través de la reflexión para leer los datos. /p>

Nota especial:

上篇: Programación en modo de estado en lenguaje CC es un lenguaje estructurado, como dijo el profesor Tan: se centra en algoritmos y estructuras de datos. En el diseño de un programa en C, la primera consideración es cómo manipular la entrada (o las condiciones ambientales) a través de un proceso para obtener la salida (o implementar el control del proceso (transacción)). Para C, la primera consideración es cómo construir un modelo de objeto para que este modelo pueda ajustarse al dominio del problema correspondiente, a fin de obtener resultados o realizar el control del proceso (transacción) obteniendo la información de estado del objeto. Entonces, la mayor diferencia entre C y C radica en sus diferentes formas de pensar acerca de la resolución de problemas. La razón por la que C es más avanzado que C es porque "el concepto de diseño se ha integrado en C" y, en lo que respecta al lenguaje en sí, C es más un concepto de algoritmo. ¡No importa incluso si es c, incorrecto! Los algoritmos son la base de la programación y un buen diseño es imposible sin buenos algoritmos. Además, "C Good Design" también puede escribir cosas muy buenas. Por lo tanto, en comparación con C, C contiene conceptos de "diseño" más ricos, pero C es un subconjunto autoconsistente de C, que también tiene funciones poderosas y también vale la pena aprenderlo. Algunas sugerencias de estudio: 1. Los conceptos básicos son importantes. Ya sea que esté aprendiendo C o C, los conceptos básicos son lo primero y son relativamente difíciles. Sin embargo, sólo dominando los conceptos básicos podrá comprender el contexto general y ser condescendiente. 2.C es un subconjunto de C. Los conceptos básicos y los métodos de diseño son relativamente fáciles de entender y los principiantes pueden comenzar con ellos. 3. Si desea aprender bien C, se recomienda que los principiantes no escriban programas en VC, BCB y otras plataformas. La generación automática de código y una interfaz colorida le dejarán con muchas opciones para elegir. Es mejor buscar primero una empresa de limpieza (Unix, Dos), comenzar desde cero, escribir algunos programas más grandes y luego ir a VC y BCB para echar un vistazo. Estarás muy relajado. En mi opinión, aprender bien C/C es la única manera de convertirse en un maestro de VC y BCB. 4. No intentes ser rápido, debes resolverlo poco a poco y encontrar la manera de resolver cada problema. 5. Varios buenos libros: La "Computer Science Series" publicada por Machinery Industry Press, desde C a C hasta el diseño orientado a objetos, es un clásico de TMD a un precio razonable. También hay varios buenos libros en China. El libro del viejo Tan es bueno, pero hay demasiados errores de programa. Recomiendo encarecidamente "Ingeniería de software moderna" (Volumen 1, Volumen 2) de Zhou Zhiying de la Universidad de Tsinghua. Es un libro raro y bueno que he leído en China. Tiene esencia, puntos clave y sabor. Al menos pertenece a Dongdong, el nivel de Dieciocho Palmas. Creo que aunque se sospecha que el camarada "Tan Haoqiang" hace trampa con dinero (tengo un libro en inglés casi idéntico a mano), fue él quien introdujo este manual de introducción a China e hizo que innumerables programadores entendieran el lenguaje C. Creo que su contribución también es imborrable. Los ejemplos de este libro se pueden utilizar como piedra angular del entrenamiento del pensamiento, lo cual es muy útil para la programación de todos. Creo que vale la pena comprarlo. Pensar en ejemplos después de clase te será de gran ayuda para tu programación. No subestimes los ejemplos simples, son tu camino hacia el éxito. Cuando básicamente puedas dominar los ejemplos del libro anterior, tendrás que encontrar algunos ejemplos para leer. Al principio, es posible que no los entiendas. Pero mientras trabajes duro, no habrá problema. Después de haber visto algunos ejemplos importantes, de repente lo comprenderá (leer una gran cantidad de programas de ejemplo es un atajo para aprender C/C). Descubrirás que tu nivel ha mejorado significativamente. Cuantos más ejemplos vea, más sabrá sobre Windows/DOS. Lo mejor es leer algunos libros sobre conocimientos del sistema. Te será de mucha ayuda para tu programación. Esta es mi pequeña experiencia en el aprendizaje de C/C. Espero que sea útil para los amigos que no se sientan intimidados por mí y quieran seguir aprendiendo C/C. Para que algunos camaradas no digan que estoy destruyendo el desarrollo de talentos de software en China, ¡deben aprender bien C! ! ! La razón por la que lo digo tan claramente hoy aquí es porque no quiero que los principiantes caigan en el malentendido de que cuanto más nuevo sea el idioma, mejor. Originalmente, esta pregunta no era muy rigurosa, ¡pero aún quiero decir algunas palabras para reivindicar a C! ! En segundo lugar, las comillas, las comillas son lo que más huele mal en C, así que trata de no usarlas. Nunca lo uso a menos que sea absolutamente necesario. Las referencias son confusas para los principiantes, que no saben cuál es una referencia y cuál es una variable. 5. Sobrecarga del operador, aplicaciones avanzadas típicas, es posible que los principiantes no las utilicen en absoluto. Esto les hará pensar que C es difícil, que el umbral es alto y que no pueden entenderlo. 下篇: ¿Cómo convertir -65535 a binario de 32 bits en C?