且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

iphone开发之获取是否飞行模式和设备IMEI

更新时间:2022-08-17 07:47:09

iphone的开发环境下,有时候需要获取的设备信息的时候是比较困难,没有和android一样的源码开放,但是通过其他的很多途径,我们可以获取到许多意想不到的信息。

 

NetworkController 是一个私有的类,其中有许多很有意思的功能。可以判断网络,网卡,飞行模式,EDGE等等的许多网络相关的功能。

 

/*

 

 

 

 */

 

 

@class NSStringNSTimer;

 

@interface NetworkController : NSObject

{

    

    

    

    

    

    

    

    

}

 

+ (id)sharedInstance;

- (void)dealloc;

- (id)init;

- (BOOL)isNetworkUp;

- (BOOL)isFatPipe;

- (BOOL)inAirplaneMode;

- (id)domainName;

- (BOOL)isHostReachable:(id)fp8;

- (id)primaryEthernetAddressAsString;

- (id)IMEI;

- (id)edgeInterfaceName;

- (BOOL)isEdgeUp;

- (void)bringUpEdge;

- (void)keepEdgeUp;

- (void *)createPacketContextAssertionWithIdentifier:(id)fp8;

 

@end

 

获取设备是否处在飞行模式,于前面我写的动态加载私有库一篇的通过私有库设置飞行模式的开关配合,相当好用。

+ (BOOL)getAirplaneMode

{

         

         

}

 

这里获取IMEI不给力,没测试通过,不过后面会介绍另一种获取的方式,是直接获取硬件信息的方式比较注重底层,不在关注frameworkes。

 

      私有,以下方法真机程序会崩溃,需要 Message.framework

//      id nc = [NetworkController sharedInstance];

//      return [nc IMEI];










本文转自 arthurchen 51CTO博客,原文链接:http://blog.51cto.com/arthurchen/577940,如需转载请自行联系原作者