iOS谷歌地图如何检测我正在进入汽车?
最新的iOS谷歌地图应用程序(目前版本为4.9.0)有一个非常好的功能,但到目前为止,我还不知道这是如何实现的 该功能是:每当我进入我的车,试图驾驶某处,谷歌地图将向我的手机发送通知,猜测我要去哪里,给我一个流量估计,即使手机处于锁定状态,谷歌地图应用程序已经好几天没用了。屏幕截图如下所示: 作为一名iOS开发人员,这对我来说非常令人惊讶。它怎么能生活在背景中,如此准确地检测到我正在进入一辆汽车 我的猜测之一是,谷歌地图正在使用显著的位置变化API。通过这种方式,应用程序可以在后台模式下被唤醒,但是,当我进入我的车时,仍然不能保证它被唤醒。我已经用这个机制写了一个测试应用程序,虽然它可以在后台唤醒,但是时间不正确,没有检测到我是否进入了一辆车 如果您启动此服务,并且您的应用程序随后被终止,则如果出现新事件,系统会自动将应用程序重新启动到后台。在这种情况下,传递给应用程序委托的应用程序:willFinishLaunchingWithOptions:和应用程序:didFinishLaunchingWithOptions:方法的选项字典包含UIApplicationLaunchActionsLocationKey键,以指示您的应用程序是因位置事件而启动的。重新启动后,您仍然必须配置location manager对象并调用此方法以继续接收位置事件。重新启动location services时,当前事件将立即传递给您的代理。此外,即使在启动location services之前,location manager对象的location属性也会填充最新的location对象iOS谷歌地图如何检测我正在进入汽车?,ios,iphone,google-maps,Ios,Iphone,Google Maps,最新的iOS谷歌地图应用程序(目前版本为4.9.0)有一个非常好的功能,但到目前为止,我还不知道这是如何实现的 该功能是:每当我进入我的车,试图驾驶某处,谷歌地图将向我的手机发送通知,猜测我要去哪里,给我一个流量估计,即使手机处于锁定状态,谷歌地图应用程序已经好几天没用了。屏幕截图如下所示: 作为一名iOS开发人员,这对我来说非常令人惊讶。它怎么能生活在背景中,如此准确地检测到我正在进入一辆汽车 我的猜测之一是,谷歌地图正在使用显著的位置变化API。通过这种方式,应用程序可以在后台模式下被唤醒
感谢您的建议和帮助。来自@alexkent的一条评论指出了我的错误。这是苹果的Maps.app,不是谷歌地图。所有学分都属于@alexkent
该通知来自苹果的Maps.app,而非谷歌地图。一个新的 iOS9中的特性(您必须正在运行)是检测 当你在车里的时候。我想这是通过检测 来自车载收音机的蓝牙信号(我没有检查)。我愿意 不相信有开发人员API可用于此功能
@阿列克斯肯特是对的。它使用蓝牙技术工作,并且没有公共API。如果您关闭蓝牙,这种情况将停止
地理围栏和一般的地理定位精度没有那么精确。通知来自苹果的Maps.app,而不是谷歌地图。iOS9中的一个新功能(您必须运行它)是检测您何时在车内的能力。我想这是通过检测车载收音机的蓝牙信号来实现的(我还没有检查)。我不相信有开发人员API可用于此功能。@alexkent你说得对,我怎么能忽略此图标。但是,苹果怎么知道蓝牙属于汽车音响?它可以是任何设备。也许他们已经过滤掉了所有汽车上常见的立体声设备。随便猜测一下,蓝牙设备都有自己的硬件设备id,可以从中编译数据库,也就是说,谁制造了这个设备,用于什么目的。