iOS デバイスに GPS ユニットがあるかどうかを検出する方法を探していたところ、この質問に出くわしました。最後の回答は非常に興味深いものでした。
CTTelephonyNetworkInfo* netInfo = [[CTTelephonyNetworkInfo alloc] init];
if(netInfo) {
CTCarrier* carrier = [netInfo subscriberCellularProvider];
if([[carrier carrierName] length] <=0) {
//NO operator=>NO 3G and no real GPS
}
}
この手法の有効性/完全に正確かどうかについて、確認を求めていました。自分でテストするのに十分なデバイスがありません。