• Stars
    star
    114
  • Rank 308,031 (Top 7 %)
  • Language
    Objective-C
  • License
    MIT License
  • Created over 8 years ago
  • Updated almost 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

获取iPhone相关信息以及网络状态等等。

(求合作,欢迎iOSer一起完善,ok)

前言

获取iPhone相关信息、电池信息、屏幕信息、越狱状态以及网络状态等。

使用方法

方式1、下载工程,然后将ZGInfoCollection文件夹放到自己的项目中去。

详细介绍

使用时导入ZGInfoCollection即可,里面包含了所有相关文件。下面简单介绍一下:
1、ZGDeviceInfo

/**
 *  是否支持多任务
 *
 *  @return YES表示支持,NO表示不支持
 */
- (BOOL)multitaskingSupported;
/**
 *  单例实例化一个当前对象
 *
 *  @return 返回一个当前对象
 */
+ (instancetype)currentDeviceInfo;

/**
 *  得到当前用的什么手机,iPhon5s? iPhone6s ....
 *
 *  @return 手机类型名称
 */
- (NSString *)getCurrentDevicePhoneType;
/**
 *  得到当前设备独一标识符
 *
 *  @return 例如:0996E3AC-8800-4961-A3BF-5D49299C96E7
 */
- (NSString *)getUUID;
/**
 *  得到当前设备类型 :iPhone / iPad
 *
 *  @return iPhone / iPad
 */
- (NSString *)getDeviceType;
/**
 *  得到当前的手机名称,关于本机里面的名称
 *
 *  @return 手机名称
 */
- (NSString *)getCurrentDeviceName;
/**
 *  得到当前系统名称
 *
 *  @return 系统名称
 */
- (NSString *)getSystemName;
/**
 *  得到当前系统版本
 *
 *  @return 版本.例如:9.3.4,以及最新的10
 */
- (NSString *)getSystemVersion;
/**
*  获取当前设置XNU内核版本号
*
*  @return 返回当前XNU内核版本号
*/
- (NSString *)getKernelVersion;
/**
 *  得到构建描述
 *
 *  @return 得到内核描述信息
 */
- (NSString *)getDarwinBuildDescription;
/**
 *  得到硬件类型
 *
 *  @return 硬件类型,iPhone8,1,iPhone5.1等等
 */
- (NSString *)getHardWardType;
/**
 *  得到当前网络节点名称
 *
 *  @return 当前节点名称
 */
- (NSString *)getNetWordNodeName;
/**
 *  得到当前操作系统名称
 *
 *  @return 内核操作系统名称
 */
- (NSString *)getOSName;

/**
 *  得到当前设备的核数
 *
 *  @return 核数
 */
- (NSInteger)getNuclearCount;
/**
 *  得到当前设备活跃的核数
 *
 *  @return 核数
 */
- (NSInteger)getActiveNuclearCount;

2、ZGStorageInfo

/**
 *  得到当前磁盘总大小
 *
 *  @param type 大小类型:ZGSizeTypeOrigin是原始大小,没有经过转换,单位为B;ZGSizeTypeNormalized是规格化后的大小
 *
 *  @return 返回大小,可能有差距,但是相差不大
 */
- (NSString *)getDiskTotalSizeBySizeType:(ZGSizeType)type;

/**
 *  得到当前磁盘空闲内存大小
 *
 *  @param type type 大小类型:ZGSizeTypeOrigin是原始大小,没有经过转换,单位为B;ZGSizeTypeNormalized是规格化后的
 *
 *  @return 返回大小,可能有差距,但是相差不大
 */
- (NSString *)getDiskFreeSizeBySizeType:(ZGSizeType)type;
/**
 *  得到当前磁盘已经使用的大小
 *
 *  @param type type 大小类型:ZGSizeTypeOrigin是原始大小,没有经过转换,单位为B;ZGSizeTypeNormalized是规格化后的
 *
 *  @return 返回大小,可能有差距,但是相差不大
 */
- (NSString *)getDiskUsedSizeBySizeType:(ZGSizeType)type;

/**
*  得到当前物理内存总大小,指通过物理内存而获得的内存空间大小
*
*  @param type 大小类型:ZGSizeTypeOrigin是原始大小,没有经过转换,单位为B;ZGSizeTypeNormalized是规格化后的大小
*
*  @return 返回大小
*/
- (NSString *)getMemoryTotalSizeBySizeType:(ZGSizeType)type;

/**
 *  得到当前物理内存空闲内存大小 Unimplemented
 *
 *  @param type type 大小类型:ZGSizeTypeOrigin是原始大小,没有经过转换,单位为B;ZGSizeTypeNormalized是规格化后的
 *
 *  @return 返回大小,可能有差距,但是相差不大
 */
- (NSString *)getMemoryFreeSizeBySizeType:(ZGSizeType)type;
/**
 *  得到当前内存已经使用的大小 Unimplemented
 *
 *  @param type type 大小类型:ZGSizeTypeOrigin是原始大小,没有经过转换,单位为B;ZGSizeTypeNormalized是规格化后的
 *
 *  @return 返回大小,可能有差距,但是相差不大
 */
- (NSString *)getMemoryUsedSizeBySizeType:(ZGSizeType)type;

3、ZGBatteryInfo

/**
 *  当前电池量
 *
 *  @return 0-1
 */
- (CGFloat)currentBatteryLevel;
/**
 *  电池状态
 *
 *  @return 正在充电、未充电、充满电
 */
- (ZGBatteryState)batteryState;
/**
 *  电池是否允许监控
 *
 *  @return YES表示能够监控,NO表示不能够监控
 */
- (BOOL)isAllowMonitorBattery;

4、ZGScreenInfo

/**
 *  单例构建当前屏幕信息
 *
 *  @return 当前对象实例
 */
+ (instancetype)currentScreenInfo;

/**
 *  得到当前屏幕宽度
 *
 *  @return 宽度值
 */
- (CGFloat)getCurrentScreenWith;
/**
 *  得到当前屏幕高度
 *
 *  @return 高度值
 */
- (CGFloat)getCurrentScreenHeight;

/**
 *  得到屏幕亮度
 *
 *  @return 0-1
 */
- (CGFloat)getScreenBrightness;
/**
 *  屏幕分辨率
 *
 *  @return 
 */
- (NSString *)screenResolution;
/**
 *  得到当前屏幕dpi
 *
 *  @return return value description
 */
- (CGFloat)getScreenDpi;

5、ZGNetWorkInfo

/**
 *  得到当前wifi列表
 *
 *  @return wifi列表,经测试,这里只是返回了当前连接wifi的信息
 */
- (NSMutableArray *)getWifiListArr;


/**
 *  当前设备是否联网
 *
 *  @return YES表示联网,NO表示没有联网
 */
- (BOOL)isConnectionNetWork;


/**
 *  得到当前网络状态
 *
 *  @return 返回 NetWorkStaus枚举
 */
- (NetWorkReachStatus)getNetWorkStaus;

6、ZGJailBreak

/**
 *  是否越狱
 *
 *  @return YES表示已经越狱,NO表示没有越狱
 */
+ (BOOL)isJailBreak;

7、ZGLocationInfo

/**
 *  得到设备当前的位置,block回调里面已经包含了CLPlacemark里面包含了你需要的信息,需要自取
 *  详细可以参考CLPlacemark类属性
 *
 *  @return CLLocation
 */
- (void)getCurrentLocation:(ChangeLocationBlock)block;

8、ZGProjectInfo

/**
 *  得到当前项目版本
 *
 *  @return 当前版本
 */
- (NSString *)getProjectVersion;

/**
 *  得到当前项目构建版本号
 *
 *  @return 当前构建版本
 */
- (NSString *)getProjectBuildVersion;



/**
 *  得到当前项目名称
 *
 *  @return 当前名称
 */
- (NSString *)getProjectName;

9、ZGDeviceVPNInfo

/**
get current link vpn status

 @return devicelinkvpnstatus
 */
+ (DeviceLinkVPNStatus)getCurrentDeviceLinkVpnSataus;



/**
judge device connected vpn or not

 @return YES:Connected,NO:not connected
*/
+ (BOOL)isVPNConnected;

10、ZGPhoneOperatorInfo /** 得到当前手机所属运营商名称,如果没有则为nil

 @return 返回运营商名称
 */
+ (NSString *)getCurrentPhoneOperatorName;


/**
 得到当前手机号的国家代码,如果没有则为nil

 @return 返回国家代码
 */
+ (NSString *)getCurrentISOCountryCode;

/**
 得到移动国家码

 @return 返回移动国家码
 */
+ (NSString *)getMobileCountryCode;

更新记录

       
序号 更新内容 更新时间 备注
1 添加位置信息定位 2016年8月19日 详见7
2 添加网络和项目信息 2016年8月24日 详见5,8
3 添加Cocoapods支持 2016年10月27日
4 添加网络代理查询以及VPN信息 2017年6月19日
5 添加手机运营商信息 2017年7月6日
6 拿到设备信息添加iPhone X 2017年11月17日

有问题QQ群交流:206613455

More Repositories

1

itools

iOS dev tools
Ruby
38
star
2

ZGWKWebViewCache

iOS WKWebView cache
Objective-C
17
star
3

AppExtension

App扩展
Swift
14
star
4

iOSChangeAppIcon

改变appicon
Swift
9
star
5

AnimationNumLabel

这里是一个UILabel的扩展,主要用于数字的动态变换,比如从1000到2500的动态增加,从2000-1000的动态减少等。详情可参考Demo
Objective-C
8
star
6

WKWebViewNewFeature

WKWebView new features
Swift
7
star
7

messageForward

消息转发
Objective-C
6
star
8

ZGUIWebViewCache

UIWebView cache
Objective-C
6
star
9

HotOrConcernCityListChoose

添加热门城市和关注城市
Objective-C
5
star
10

WKWebViewDemo

Objective-C
5
star
11

LivePhotoDemo-Swift

4
star
12

LaunchAd

Objective-C
3
star
13

iOS_Lock_Test

锁简述
Objective-C
3
star
14

AppleDemoSourceCode

苹果官方的代码留存
Objective-C
2
star
15

ScottZg.github.io

personal blog
HTML
2
star
16

Geofencing

地理围栏
Swift
2
star
17

WKWebViewLoadJS

WKWebView load local js
Objective-C
2
star
18

ZGShakeFeedBack

a shake to get screen shot for feedback
Objective-C
1
star
19

ZGRSAEncryptor

iOS rsa加密
Objective-C
1
star
20

Mac-OS-Demo

macos开发
Swift
1
star
21

iTunesApi

iTunesApi的使用
Objective-C
1
star
22

GetProvinceCityAreaByXMLFile

一个简单的小例子,通过解析xml文件去实现选择省市区.其中还包括了一个用plist文件去实现省市区选择
Objective-C
1
star
23

RetainCycle

循环引用分享ppt以及Demo
Objective-C
1
star
24

ShowList

This is a SlideList,When you tap a button , it will show
Objective-C
1
star
25

ReactNative-Helloworld

React Native Helloworld
Objective-C
1
star
26

ZGTextFieldButtonRelationManager

处理按钮和UITextField的关系,只有所有UITextField都有值的时候按钮才有效
Objective-C
1
star
27

ZGAlertView

自定义的带有特效的AlertView
Objective-C
1
star
28

iOS-Animation

iOS动画-核心技术与案例实战
Swift
1
star
29

CarouselImageView

轮播图
Objective-C
1
star
30

ZGWaterView

水波纹效果
Objective-C
1
star
31

UIAlertView-Block

带有block回调的UIAlertView
Objective-C
1
star
32

TableViewIndex

城市添加检索(A/B/C/D.......)
Objective-C
1
star