const string DeviceInfoManagerIOS::getDeviceUUID()
{
CFUUIDRef puuid = CFUUIDCreate( nil );
CFStringRef uuidString = CFUUIDCreateString( nil, puuid );
NSString *result = (NSString *)CFStringCreateCopy( NULL, uuidString);
CFRelease(puuid);
CFRelease(uuidString);
string uuidStr = [result cStringUsingEncoding: NSUTF8StringEncoding];
[result release];
return uuidStr;
}
string DeviceInfoManagerIOS::getIOSLanguageString()
{
NSString *lan = [[IOSDeviceInfoManager getInstance] getLanguageTypeString];
return [lan cStringUsingEncoding: NSUTF8StringEncoding];
}
string DeviceInfoManagerIOS::getIOSVersion()
{
return [[[UIDevice currentDevice] systemVersion] cStringUsingEncoding: NSUTF8StringEncoding];
}
string DeviceInfoManagerIOS::getDeviceModel()
{
return [[UIDevice currentDevice].model cStringUsingEncoding:NSUTF8StringEncoding];
}
bool DeviceInfoManagerIOS::checkIsNetWorkOpen()
{
if (this->getDeviceModel() == "none") {
return false;
}
return true;
}
string DeviceInfoManagerIOS::getDeviceNetworkModel()
{
string type = "none";
Reachability *reachability = [Reachability reachabilityForInternetConnection];
[reachability startNotifier];
NetworkStatus status = [reachability currentReachabilityStatus];
if(status == NotReachable)
{
//No internet
type="none";
}
else if (status == ReachableViaWiFi)
{
//WiFi
type="wifi";
}
else if (status == ReachableViaWWAN)
{
//MOBILE
type="3g";
}
return type;
}
{
CFUUIDRef puuid = CFUUIDCreate( nil );
CFStringRef uuidString = CFUUIDCreateString( nil, puuid );
NSString *result = (NSString *)CFStringCreateCopy( NULL, uuidString);
CFRelease(puuid);
CFRelease(uuidString);
string uuidStr = [result cStringUsingEncoding: NSUTF8StringEncoding];
[result release];
return uuidStr;
}
string DeviceInfoManagerIOS::getIOSLanguageString()
{
NSString *lan = [[IOSDeviceInfoManager getInstance] getLanguageTypeString];
return [lan cStringUsingEncoding: NSUTF8StringEncoding];
}
string DeviceInfoManagerIOS::getIOSVersion()
{
return [[[UIDevice currentDevice] systemVersion] cStringUsingEncoding: NSUTF8StringEncoding];
}
string DeviceInfoManagerIOS::getDeviceModel()
{
return [[UIDevice currentDevice].model cStringUsingEncoding:NSUTF8StringEncoding];
}
bool DeviceInfoManagerIOS::checkIsNetWorkOpen()
{
if (this->getDeviceModel() == "none") {
return false;
}
return true;
}
string DeviceInfoManagerIOS::getDeviceNetworkModel()
{
string type = "none";
Reachability *reachability = [Reachability reachabilityForInternetConnection];
[reachability startNotifier];
NetworkStatus status = [reachability currentReachabilityStatus];
if(status == NotReachable)
{
//No internet
type="none";
}
else if (status == ReachableViaWiFi)
{
//WiFi
type="wifi";
}
else if (status == ReachableViaWWAN)
{
//MOBILE
type="3g";
}
return type;
}