Cómo obtener información de la tarjeta SIM en el desarrollo de Android
TelephonyManager TM = (TelephonyManager)Context . getsystem service (Context. Telephone_Service); TelephonyManager es utilizado por TelephonyManager para proporcionar acceso a la información del servicio de comunicación en el dispositivo. Las aplicaciones utilizan este método para obtener el proveedor de servicios del teléfono o. estado. El programa también puede registrar un oyente para escuchar cambios en el estado del teléfono. No es necesario crear una instancia de esta clase directamente. Utilice el contexto. getSystemService(context. telephony_service) para obtener una instancia de esta clase.
Nota: Algunos mensajes telefónicos requieren los permisos correspondientes. Método no válido.
getSimOperatorName()? Devuelve el nombre del proveedor de servicios (SPN). //Obtenga el nombre del proveedor de servicios, como China Telecom, China Unicom y China Mobile. El primer método consiste en obtener el código IMSI del teléfono móvil y determinar si es China Mobile/China Unicom/China Telecom.
TelephonyManager telManager =(TelephonyManager)getsystem service(Context.Telephone_Service);
/* *Obtener el código IMSI de la tarjeta SIM* El identificador único de la tarjeta SIM: IMSI ( El número de identificación de usuario móvil internacional) es una marca que distingue a los usuarios de dispositivos móviles. Se almacena en la tarjeta SIM y puede usarse como información efectiva para distinguir a los usuarios de dispositivos móviles.
IMSI consta de MCC, MNC y MSIN, donde MCC es el número de país de telefonía móvil, que consta de 3 dígitos, * identifica de forma única el país al que pertenece el cliente de telefonía móvil, China es 460 es la identificación de la red; , que consta de 2 dígitos. Compuesto por * se utiliza para identificar la red móvil a la que pertenece un cliente de telefonía móvil: China Mobile es 00, China Unicom es 01 y China Telecom es 03;
MSIN es un móvil. Código de identificación del cliente, compuesto por 11 dígitos de igual longitud. *
Identifica de forma única a los clientes móviles en la red nacional de comunicaciones móviles GSM. Entonces, para distinguir China Mobile y China Unicom, solo necesita obtener el campo MNC en la tarjeta SIM*/
string imsi = tel manager . != null){ if(imsi . comienza con(" 46000 ") | | imsi . comienza con(" 46002 ")
{//Porque el IMSI bajo el número de red móvil 46000 se ha agotado , se usa uno ficticio de 46002 Número, este número se usa en el segmento numérico 134/159//China Mobile
} else if(imsi . comienza con(" 46001 ") {
//China China Unicom
} else if(imsi . comienza con(" 46003 ") {
//China Telecom
} }
No. Los dos métodos son telephonymanager =(telephonymanager)getsystem service(context.
servicio_telefono); cadena operador = tel manager . getsimoperator();
if (operador != null){ if(operador . igual(" 46000 ") | | operador . igual(" 46002 " ) | | operador . es igual(" 46007 ") {
//China Mobile
} else if(operador . es igual(" 46001 ") {
//China Unicom
} else if(operator .quals(" 46003 ") {
//China Telecom
} }
Para agregar permisos para el archivo AndroidManifest.xml, consulte la descripción del método en el documento API TelephonyManager
Agregar permisos al archivo AndroidManifest.xml
administrador de telefonía tel =(administrador de telefonía). . Context.getSystemService(Context.Telephone_Service);
string SIMO operator = tel. getsimo operator();
IMSI * * * 15 bits, la estructura es la siguiente: MCC+ MNC+ minmcc: Código de país móvil, ***3 dígitos, China es 460; MNC: Código de red móvil, ***2 dígitos, Telecom 03, China Mobile 02, China Unicom GSM 01, el número IMSI típico es 460030912121001; ** Hay 10 dígitos y la estructura es la siguiente: 09 + M0M12M3 + ABCD, donde M0M12M3 y H0H1H2H3 en el número MDN pueden tener una relación correspondiente. Los cuatro dígitos de ABCD se asignan libremente. MCC antes del número MIN para distinguir cada uno de qué país es el usuario, por lo que el roaming internacional es posible si hay varios operadores CDMA en el mismo país, puede usar MNC para distinguirlos. () devuelve la ubicación de la unidad del dispositivo ACCESS_COARSE_LOCATION o ACCESS_FINE_LOCATION
getDeviceId() devuelve el IMEI/MEID del dispositivo. Si el dispositivo es un dispositivo GSM, se devolverá el número IMEI. es un dispositivo CDMA, el MEID se devolverá a READ_PHONE_STATE.
GetLine1Number() devuelve el número de teléfono del dispositivo (número MSISDN) READ_PHONE_STATE.
GetNetworkOperatorName() devuelve el nombre del operador de red registrado.
El operador de red registrado de la empresa multinacional MCC + devuelto por getNetworkOperator()
GetNetworkCountryIso() devuelve el código de país del operador de red registrado.
GetSimCountryIso() devuelve el código de país READ_PHONE_STATE del operador de la tarjeta SIM.
GetSimOperator() devuelve el número de células mononucleares del operador de la tarjeta SIM + READ_PHONE_STATE.
GetSimOperatorName() devuelve el nombre del operador de la tarjeta SIM READ_PHONE_STATE.
GetSimSerialNumber() devuelve el número de serie de la tarjeta SIM READ_PHONE_STATE.
GetNetworkType() devuelve los tipos de dispositivos de red disponibles. Este será uno de los siguientes valores:
Administrador de teléfono.
ADMINISTRADOR DE TELÉFONO NETWORK_TYPE_UNKNOWN. NETWORK_TYPE_GPRSPHONEMANAGER. Administrador de teléfono perimetral de tipo de red. network_type_UMTS read_phone_state getphonetype() devuelve el tipo de dispositivo. Este será uno de los siguientes valores: Phone Manager. Tipo de teléfono Sin administrador de teléfono. Tipo de teléfono Administrador de teléfono GSM. PHONE_Type_CDMA READ_PHONE_STATE getSubscriberID()El dispositivo READ_PHONE_STATE devuelve la identificación del suscriptor (IMSI).
GetNeighboringCellInfo() devuelve la información de la celda adyacente en la lista representativa de la clase NeighboringCellInfo, si está disponible; de lo contrario, devuelve null access_course_updates.