Distinguish iPhone 3G from iPhone 3GS

Is it possible to distinguish iPhone 3G from iPhone 3G S using any of the [UIDevice currentDevice] properties?

+4
source share
3 answers

The best way to check is to use sysctlbyname("hw.machine", ...) according to How do I know if your code works on iPhone or iPhone3G?

The returned result for 3GS should be "iPhone2.1"

+5
source

I don’t believe it - not even 1G phones from 3G. You should use sysctls to get more details about the model.

eg. see here

+1
source

perhaps a simpler solution - try

 [[[UIDevice] currentDevice] isMultitaskingSupported]; 

iPhone 3G does not have multitasking, while 3GS and newer.

0
source

Source: https://habr.com/ru/post/1286561/


All Articles