我想编写一个跟踪应用程序,它会在用户上车时做出反应/记录,手机会自动与蓝牙免提配对。我还需要免提设备的 ID。
在 Android 上,使用广播接收器很容易,您的应用程序可以收听设备与手机配对的广播。即使手机重新启动并且应用程序在重新启动后没有运行,它仍然可以工作。
在iOS(7+)上可以吗?
我想编写一个跟踪应用程序,它会在用户上车时做出反应/记录,手机会自动与蓝牙免提配对。我还需要免提设备的 ID。
在 Android 上,使用广播接收器很容易,您的应用程序可以收听设备与手机配对的广播。即使手机重新启动并且应用程序在重新启动后没有运行,它仍然可以工作。
在iOS(7+)上可以吗?
您可以通过阅读本文档的“在后台执行长期操作”部分来做到这一点
本质上,使用状态恢复,系统会记录您的应用程序在被终止时正在做什么。
如果应用程序正在搜索蓝牙设备并被系统杀死,系统将负责继续此搜索并在找到蓝牙设备后再次唤醒应用程序。
请注意,这仅在应用程序被系统而不是用户(使用多任务栏)杀死时才有效。自 iOS 7 以来,这种行为发生了变化。
或者,如果您的 BT 硬件可以被编程为使用 ibeacon 协议发送广告,那么您的应用程序可以被 corelocation/ibeacon api“唤醒”。在该提示之后,也许可以启动 corebluetooth 配对代码。