iphone-common-codes-ccteam源代码 CCPhone.m

CCPhone.m代码解析与应用
本文详细解读了CCPhone.m文件中实现的电话拨打、获取运营商代码、SIM类型信息等功能,介绍了如何在iOS应用中使用这些功能进行电话拨打及获取手机运营商信息。
//
//  CCPhone.m
//  CCFC
//
//  Created by xichen on 11-12-16.
//  Copyright 2011年 ccteam. All rights reserved.
//


#import "CCPhone.h"
#import "CCNSString.h"
#import <CoreTelephony/CTTelephonyNetworkInfo.h>
#import <CoreTelephony/CTCarrier.h>


@implementation CCPhone


// 拨打号码
+ (BOOL)call:(NSString *)phoneNo
{
        NSString *str = [NSString stringWithFormat:@"tel://%@", phoneNo];
        return [[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]];
}


// get the carrier code
+ (NSString *)getCarrierCode __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_4_0)
{
        CTTelephonyNetworkInfo *info = [[[CTTelephonyNetworkInfo alloc] init] autorelease];
        CTCarrier *carrier = info.subscriberCellularProvider;
        
        return carrier.mobileNetworkCode;
}


// get the SIM type info, eg, ChinaMobile, ChinaTelecom, and so on
+ (NSString *)getSIMCarrierName:(NSString *)carrierCode __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_4_0)
{
        if([carrierCode stringInArr:[NSArray arrayWithObjects:@"00", @"02", @"07", nil]])
                return @"China Mobile";
        if([carrierCode stringInArr:[NSArray arrayWithObjects:@"01", @"06", nil]])
                return @"China Unicom";
        if([carrierCode stringInArr:[NSArray arrayWithObjects:@"03", @"05", nil]])
                return @"China Telecom";
        if([carrierCode stringInArr:[NSArray arrayWithObjects:@"20", nil]])
                return @"China Tietong";
        return nil;
}




#if CC_ENABLE_PRIVATE_API
+ (NSDictionary *)getPhoneNumberDict
{
        return CTSettingCopyMyPhoneNumberExtended();
}


+ (NSString *)getPhoneNumber    // maybe returs nil
{
        NSDictionary *dict = CTSettingCopyMyPhoneNumberExtended();
        return [[[dict objectForKey:@"kCTSettingMyPhoneNumber"] retain] autorelease];
}


+ (NSString *)getPhoneNumberByUserDefaults      // maybe returs nil
{
        return [[[[NSUserDefaults standardUserDefaults] valueForKey:@"SBFormattedPhoneNumber"] retain] autorelease];
}


#endif


@end


可能有更新:

googlecode链接地址:http://code.google.com/p/iphone-common-codes-ccteam/source/browse/trunk/CCFC/files/CCPhone.m

github地址: https://github.com/cxsjabc/iphone-common-codes-ccteam/tree/master/CCFC/files/CCPhone.m


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值