检测iPhone/iPod Touch/iPad是否有GPS芯片或aGPS

检测iPhone/iPod Touch/iPad是否有GPS芯片或aGPS,iphone,ios4,ipad,core-location,uidevice,Iphone,Ios4,Ipad,Core Location,Uidevice,我正试图明确地确定应用程序所在的设备是否有GPS芯片或使用aGPS或什么都没有。如果是iPhone或手机iPad,我希望它运行特定的代码 我希望能找到类似于检测摄像机是否可用的东西 if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) 提前谢谢。我不认为aGPS的意思和你认为的一样 普通GPS通过天线接收来自卫星的信号。锁定信号需要时间,因为它必须至少听到三颗卫星

我正试图明确地确定应用程序所在的设备是否有GPS芯片或使用aGPS或什么都没有。如果是iPhone或手机iPad,我希望它运行特定的代码

我希望能找到类似于检测摄像机是否可用的东西

if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])

提前谢谢。

我不认为aGPS的意思和你认为的一样

普通GPS通过天线接收来自卫星的信号。锁定信号需要时间,因为它必须至少听到三颗卫星的声音才能确定位置。因此,锁有时可能需要几分钟

aGPS和普通GPS一样,使用天线接收来自卫星的信号。然而,它有一个额外的功能来加速寻找它们:它通过互联网发送数据,告诉它卫星可能在哪里。假设用户没有离开上一次获得GPS的地方太远,那么这些信息意味着设备对在哪里寻找输入信号有一个大致的概念,因此它可以更快地找到卫星。一旦它找到了卫星,它的功能就和普通的GPS一样

要回答您的问题,没有iOS设备有GPS但没有aGPS。最初的iPhone两者都没有,3G两者都有

我认为你实际上在谈论的是细胞塔三角测量:这是另一种计算位置的方法,它的精度比任何GPS都低,而且没有能力接收卫星信号


您可以向Core Location询问单个位置的精度级别:查看
CLLocation
上的
HorizontalAccurance
属性。如果是
kCLOCATIONACURACIHUNDREDMETERS
或更高,则该设备可能未使用GPS或aGPS。然而,这并不意味着该设备无法实现锁定:它可能还没有实现锁定。

没有一款iPhone内置常规GPS芯片。它们都是AGP(除了没有GPS芯片的iPhone2G)。