Я не рекомендую делать это на самом деле, но вы можете просто узнать, какое это устройство, а затем основывать загрузку вашего приложения, если метод isCorrectDevice
возвращает true:
- (BOOL) isCorrectDevice
{
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];
free(machine);
if ([platform isEqualToString:@"iPhone3,1"] ||
[platform isEqualToString:@"iPhone3,2"] ||
[platform isEqualToString:@"iPod4,1"] ||
[platform isEqualToString:@"iPad1,1"] ||
[platform isEqualToString:@"iPad2,1"] ||
[platform isEqualToString:@"iPad2,2"] ||
[platform isEqualToString:@"iPad2,3"])
return true;
else
return false;
}
Есть несколько проблем с этим. Во-первых, как только Apple выпустит новое устройство, оно устареет и не будет включать новые устройства; но также это не остановит пользователей других устройств от загрузки. Я думаю, вы могли бы просто загрузить экран с надписью "Доступно только на ..."? Просто идея.