关闭

ios获取sim卡信息以及手机号码

标签: iOSSIM
856人阅读 评论(0) 收藏 举报
分类:
1.加入一个Framework(CoreTelephony.framework).
 
  2.引入头文件
 
#import <CoreTelephony/CTTelephonyNetworkInfo.h>
 
#import <CoreTelephony/CTCarrier.h>
 
  3.初始化
# import <UIKit/UIKit.h>
 
# import <CoreTelephony/CTTelephonyNetworkInfo.h>
 
# import <CoreTelephony/CTCarrier.h>
 
@interface RootViewController : UITableViewController
 
{
 
     //声明变量
 
     CTTelephonyNetworkInfo *networkInfo;
 
}
 
@end
 
@implementation RootViewController
 
- ( void )viewDidLoad
 
{
 
     [ super viewDidLoad];
 
     self.navigationItem.prompt = @ "CTTelephonyNetworkInfo" ;
 
     self.navigationItem.title = @ "CTCarrier" ;
 
     //初始化
 
     networkInfo = [[CTTelephonyNetworkInfo alloc] init];
 
     //当sim卡更换时弹出此窗口
 
     networkInfo.subscriberCellularProviderDidUpdateNotifier = ^(CTCarrier *carrier){
 
         UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message:@ "Sim card changed" delegate:nil cancelButtonTitle:@ "Dismiss" otherButtonTitles:nil];
 
         [alert show];
 
     };
}
 
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
 
{
 
     //获取sim卡信息
 
     CTCarrier *carrier = networkInfo.subscriberCellularProvider;
 
     static NSString *CellIdentifier = @ "Cell" ;
 
     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
 
     if (cell == nil) {
 
         cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
 
     }
 
     switch (indexPath.row) {
 
         case 0 : //供应商名称(中国联通 中国移动)
 
             cell.textLabel.text = @ "carrierName" ;
 
             cell.detailTextLabel.text = carrier.carrierName;
 
             break ;
 
         case 1 : //所在国家编号
 
             cell.textLabel.text = @ "mobileCountryCode" ;
 
             cell.detailTextLabel.text = carrier.mobileCountryCode;
 
             break ;
 
         case 2 : //供应商网络编号
 
             cell.textLabel.text = @ "mobileNetworkCode" ;
 
             cell.detailTextLabel.text = carrier.mobileNetworkCode;
 
             break ;
 
         case 3 :
 
             cell.textLabel.text = @ "isoCountryCode" ;
 
             cell.detailTextLabel.text = carrier.isoCountryCode;
 
             break ;
 
         case 4 : //是否允许voip
 
             cell.textLabel.text = @ "allowsVOIP" ;
 
             cell.detailTextLabel.text = carrier.allowsVOIP?@ "YES" :@ "NO" ;
 
             break ;
 
         default :
 
             break ;
 
     } 
     return cell;
 
}
获取手机号码
1.NSString *number = [[NSUserDefaults standardUserDefaults] stringForKey:@"SBFormattedPhoneNumber"];
只能获取的是机主设置的本机号码,不能读取sim卡上的电话号码
2. CTSettingCopyMyPhoneNumber(); 毕竟私有API

1
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

iOS获取本机号码

参考: 1、IOS开发之----获取本机号码等
  • u013282507
  • u013282507
  • 2016-04-20 18:37
  • 2893

[绍棠] ios开发 获取本机的手机号码

步骤如下: 1)导入CoreTelephony这个private framework  (私有,appstore审核是不通过的) 2)在xxx.m中加入红字部分: #import "xxx....
  • happyshaotang2
  • happyshaotang2
  • 2016-08-22 17:39
  • 4485

iOS 获取手机sim卡的运营商(移动,电信,联通) 相关信息

#import #import #import   CTTelephonyNetworkInfo *networkInfo = [[CTTelephonyNetworkInfo all...
  • x32sky
  • x32sky
  • 2017-02-23 14:48
  • 1220

IPhone之获取Sim卡信息

原文地址:IPhone之获取Sim卡信息作者:飞舞的鸡毛 首先,加入一个Framework. 引入头文件 #import #import #impo...
  • likendsl
  • likendsl
  • 2012-06-14 16:07
  • 8834

iOS获取运营商信息(IMSI)

关于获取运营商信息,需通过CoreTelephony.framework,记得在工程添加。我们用到的是CTTelephonyNetworkInfo和CTCarrier这两个类,这些在iOS 4.0之后...
  • liu537192
  • liu537192
  • 2015-10-30 15:58
  • 5740

ios获取本机手机号

[[NSUserDefaults standardUserDefaults] valueForKey:@"SBFormattedPhoneNumber"];
  • daiyelang
  • daiyelang
  • 2014-03-10 14:24
  • 14267

iOS开发获取手机通讯录中的电话号码和姓名

iOS开发获取手机通讯录中的电话号码和姓名
  • qq_23292307
  • qq_23292307
  • 2017-03-24 16:31
  • 1401

iOS开发获取通讯录用户名和手机号

iOS开发获取通讯录用户名和手机号获取权限ABAddressBookRef addressBookRef = ABAddressBookCreateWithOptions(NULL, NULL); ...
  • u011496891
  • u011496891
  • 2016-05-18 10:56
  • 1933

获取手机通讯录 iOS

iOS9之前用ABAddressBookRef获取通讯录内容,在iOS9之后(包括iOS9)用CNContactStore获取通讯录内容。并且在获取通讯录内容之前要先授权。
  • qq244596
  • qq244596
  • 2016-10-08 11:41
  • 814

iOS 获取通讯录的4种方式详解

使用场景一些App通过手机号码来推荐好友,如 微博、支付宝首先客户端会获取通讯录中的所有手机号然后将这些手机号提交到App服务器中,服务器会查找每个手机号对应的App账号如QQ号码返回到客户端,然后客...
  • vbirdbest
  • vbirdbest
  • 2016-10-22 21:38
  • 7563
    个人资料
    • 访问:28729次
    • 积分:481
    • 等级:
    • 排名:千里之外
    • 原创:27篇
    • 转载:10篇
    • 译文:0篇
    • 评论:0条
    文章分类