1.导入头文件
#include
<sys/param.h>
#include <sys/mount.h>
#include <sys/mount.h>
2.剩余空间
- (
BOOL
) freeDiskSpaceInBytes{
struct statfs buf;
long long freespace = - 1 ;
if ( statfs ( "/var" , &buf) >= 0 ){
freespace = ( long long )(buf. f_bsize * buf. f_bfree );
}
long long freeSpaceMb = freespace/ 1024 / 1024 ;
if (freeSpaceMb > 3000 ) {
return YES ;
}
return NO ; //[NSString stringWithFormat:@" 手机剩余存储空间为: %qi MB" ,freespace/1024/1024];
}
struct statfs buf;
long long freespace = - 1 ;
if ( statfs ( "/var" , &buf) >= 0 ){
freespace = ( long long )(buf. f_bsize * buf. f_bfree );
}
long long freeSpaceMb = freespace/ 1024 / 1024 ;
if (freeSpaceMb > 3000 ) {
return YES ;
}
return NO ; //[NSString stringWithFormat:@" 手机剩余存储空间为: %qi MB" ,freespace/1024/1024];
}
3.判断设备类型
- (
NSString
*) platformString{
// Gets a string with the device model
size_t size;
sysctlbyname ( "hw.machine" , NULL , &size, NULL , 0 );
char *machine = malloc (size);
sysctlbyname ( "hw.machine" , machine, &size, NULL , 0 );
NSString *platform = [ NSString stringWithCString :machine encoding : NSUTF8StringEncoding ];
free (machine);
if ([platform isEqualToString : @"iPhone1,1" ]) return @"iPhone 2G" ;
if ([platform isEqualToString : @"iPhone1,2" ]) return @"iPhone 3G" ;
if ([platform isEqualToString : @"iPhone2,1" ]) return @"iPhone 3GS" ;
if ([platform isEqualToString : @"iPhone3,1" ]) return @"iPhone 4" ;
if ([platform isEqualToString : @"iPhone3,2" ]) return @"iPhone 4" ;
if ([platform isEqualToString : @"iPhone3,3" ]) return @"iPhone 4 (CDMA)" ;
if ([platform isEqualToString : @"iPhone4,1" ]) return @"iPhone 4S" ;
if ([platform isEqualToString : @"iPhone5,1" ]) return @"iPhone 5" ;
if ([platform isEqualToString : @"iPhone5,2" ]) return @"iPhone 5 (GSM+CDMA)" ;
if ([platform isEqualToString : @"iPod1,1" ]) return @"iPod Touch (1 Gen)" ;
if ([platform isEqualToString : @"iPod2,1" ]) return @"iPod Touch (2 Gen)" ;
if ([platform isEqualToString : @"iPod3,1" ]) return @"iPod Touch (3 Gen)" ;
if ([platform isEqualToString : @"iPod4,1" ]) return @"iPod Touch (4 Gen)" ;
if ([platform isEqualToString : @"iPod5,1" ]) return @"iPod Touch (5 Gen)" ;
if ([platform isEqualToString : @"iPad1,1" ]) return @"iPad" ;
if ([platform isEqualToString : @"iPad1,2" ]) return @"iPad 3G" ;
if ([platform isEqualToString : @"iPad2,1" ]) return @"iPad 2 (WiFi)" ;
if ([platform isEqualToString : @"iPad2,2" ]) return @"iPad 2" ;
if ([platform isEqualToString : @"iPad2,3" ]) return @"iPad 2 (CDMA)" ;
if ([platform isEqualToString : @"iPad2,4" ]) return @"iPad 2" ;
if ([platform isEqualToString : @"iPad2,5" ]) return @"iPad Mini (WiFi)" ;
if ([platform isEqualToString : @"iPad2,6" ]) return @"iPad Mini" ;
if ([platform isEqualToString : @"iPad2,7" ]) return @"iPad Mini (GSM+CDMA)" ;
if ([platform isEqualToString : @"iPad3,1" ]) return @"iPad 3 (WiFi)" ;
if ([platform isEqualToString : @"iPad3,2" ]) return @"iPad 3 (GSM+CDMA)" ;
if ([platform isEqualToString : @"iPad3,3" ]) return @"iPad 3" ;
if ([platform isEqualToString : @"iPad3,4" ]) return @"iPad 4 (WiFi)" ;
if ([platform isEqualToString : @"iPad3,5" ]) return @"iPad 4" ;
if ([platform isEqualToString : @"iPad3,6" ]) return @"iPad 4 (GSM+CDMA)" ;
if ([platform isEqualToString : @"i386" ]) return @"Simulator" ;
if ([platform isEqualToString : @"x86_64" ]) return @"Simulator" ;
return platform;
}
// Gets a string with the device model
size_t size;
sysctlbyname ( "hw.machine" , NULL , &size, NULL , 0 );
char *machine = malloc (size);
sysctlbyname ( "hw.machine" , machine, &size, NULL , 0 );
NSString *platform = [ NSString stringWithCString :machine encoding : NSUTF8StringEncoding ];
free (machine);
if ([platform isEqualToString : @"iPhone1,1" ]) return @"iPhone 2G" ;
if ([platform isEqualToString : @"iPhone1,2" ]) return @"iPhone 3G" ;
if ([platform isEqualToString : @"iPhone2,1" ]) return @"iPhone 3GS" ;
if ([platform isEqualToString : @"iPhone3,1" ]) return @"iPhone 4" ;
if ([platform isEqualToString : @"iPhone3,2" ]) return @"iPhone 4" ;
if ([platform isEqualToString : @"iPhone3,3" ]) return @"iPhone 4 (CDMA)" ;
if ([platform isEqualToString : @"iPhone4,1" ]) return @"iPhone 4S" ;
if ([platform isEqualToString : @"iPhone5,1" ]) return @"iPhone 5" ;
if ([platform isEqualToString : @"iPhone5,2" ]) return @"iPhone 5 (GSM+CDMA)" ;
if ([platform isEqualToString : @"iPod1,1" ]) return @"iPod Touch (1 Gen)" ;
if ([platform isEqualToString : @"iPod2,1" ]) return @"iPod Touch (2 Gen)" ;
if ([platform isEqualToString : @"iPod3,1" ]) return @"iPod Touch (3 Gen)" ;
if ([platform isEqualToString : @"iPod4,1" ]) return @"iPod Touch (4 Gen)" ;
if ([platform isEqualToString : @"iPod5,1" ]) return @"iPod Touch (5 Gen)" ;
if ([platform isEqualToString : @"iPad1,1" ]) return @"iPad" ;
if ([platform isEqualToString : @"iPad1,2" ]) return @"iPad 3G" ;
if ([platform isEqualToString : @"iPad2,1" ]) return @"iPad 2 (WiFi)" ;
if ([platform isEqualToString : @"iPad2,2" ]) return @"iPad 2" ;
if ([platform isEqualToString : @"iPad2,3" ]) return @"iPad 2 (CDMA)" ;
if ([platform isEqualToString : @"iPad2,4" ]) return @"iPad 2" ;
if ([platform isEqualToString : @"iPad2,5" ]) return @"iPad Mini (WiFi)" ;
if ([platform isEqualToString : @"iPad2,6" ]) return @"iPad Mini" ;
if ([platform isEqualToString : @"iPad2,7" ]) return @"iPad Mini (GSM+CDMA)" ;
if ([platform isEqualToString : @"iPad3,1" ]) return @"iPad 3 (WiFi)" ;
if ([platform isEqualToString : @"iPad3,2" ]) return @"iPad 3 (GSM+CDMA)" ;
if ([platform isEqualToString : @"iPad3,3" ]) return @"iPad 3" ;
if ([platform isEqualToString : @"iPad3,4" ]) return @"iPad 4 (WiFi)" ;
if ([platform isEqualToString : @"iPad3,5" ]) return @"iPad 4" ;
if ([platform isEqualToString : @"iPad3,6" ]) return @"iPad 4 (GSM+CDMA)" ;
if ([platform isEqualToString : @"i386" ]) return @"Simulator" ;
if ([platform isEqualToString : @"x86_64" ]) return @"Simulator" ;
return platform;
}