/ / IOS - Como determinar o nome da operadora de números de telefone e taxa de última chamada para chamada de saída no iPhone - iphone, ios

IOS - Como determinar o nome da operadora de números de telefone e cobrança de última chamada para chamada de saída no iPhone - iphone, ios

Alguém pode me dizer como descobrir ocobrança de última chamada de uma chamada de saída e o nome da operadora de um número de telefone de chamada de saída? Existe uma API para obter os detalhes do nome da operadora e o custo da chamada em um iPhone?

Respostas:

2 para resposta № 1

Não se trata nem de confidencialidade nem de segurança, embora se essa informação estivesse disponível, seria uma séria preocupação de segurança.

O telefone não entende nada relacionado afaturamento em uma rede sem fio / celular. O telefone tenta se registrar em uma rede, mas se a conta estiver inativa ou não em conformidade, a rede geralmente rejeitará uma tentativa de registro.

Faturamento é muito bem tratado pelo operador "srede core (geralmente o MSC numa rede comutada por circuito, SGSN numa rede comutada de pacotes UMTS, PDSN numa rede comutada de pacotes CDMA / EVDO ou a MME numa rede comutada de pacotes LTE), pelo que é impossível obter qualquer informação sobre minutos restantes ou custos relacionados a uma chamada telefônica ou transferência de dados. Qualquer aplicativo que forneça essas informações normalmente faz isso aproximando-o. Geralmente ele apenas rastreia essa informação no nível do telefone e pode não ser oficial.

O nome da transportadora pode estar disponível dependendo do provedor e da tecnologia. Na maioria das tecnologias, o MCC e a MNC da rede estarão disponíveis e você poderá acessar esse nome de operadora. este ligação dá uma ideia de como fazer isso para o iOS4, mas a versão curta é:

#import <CoreTelephony/CTCarrier.h>
#import <CoreTelephony/CTTelephonyNetworkInfo.h>

// Setup the Network Info and create a CTCarrier object
CTTelephonyNetworkInfo *networkInfo = [[[CTTelephonyNetworkInfo alloc] init] autorelease];
CTCarrier *carrier = [networkInfo subscriberCellularProvider];

// Get carrier name
NSString *carrierName = [carrier carrierName];
if (carrierName != nil)
NSLog(@"Carrier: %@", carrierName);

// Get mobile country code
NSString *mcc = [carrier mobileCountryCode];
if (mcc != nil)
NSLog(@"Mobile Country Code (MCC): %@", mcc);

// Get mobile network code
NSString *mnc = [carrier mobileNetworkCode];
if (mnc != nil)
NSLog(@"Mobile Network Code (MNC): %@", mnc);

0 para resposta № 2

Não há não. Não deveria haver. Não pode ser. Essa coisa é confidencial.