私のiPhoneアプリには、モデルタイプを返す次のコードがあります
size_t size;
sysctlbyname("hw.machine", NULL, &size, NULL, 0);
char *modelType = malloc(size);
sysctlbyname("hw.machine", modelType, &size, NULL, 0);
NSString *deviceModel = [NSString stringWithCString:modelType encoding:NSUTF8StringEncoding];
free(modelType);
しかし、一部のユーザーのデバイスでは、nilになります。nilを返すデバイスには、位置情報サービスがあります。
1)nilが返される原因は何ですか?
2)刑務所が壊れたデバイスでnilは返されますか?
3)iDevicesでモデルタイプをチェックするためのより良い方法はありますか?