通过BLE向Android发送iOS ANCS通知

通过BLE向Android发送iOS ANCS通知,android,ios,bluetooth-lowenergy,core-bluetooth,android-bluetooth,Android,Ios,Bluetooth Lowenergy,Core Bluetooth,Android Bluetooth,作为概念证明,我想编写一个Android应用程序,它可以通过蓝牙低能量(BLE)通过苹果通知中心服务(ANCS)从iPhone 5接收通知(如短信、日历等)。Android设备正在运行KitKAT4.4,因此这似乎是可能的,因为它还支持BLE。然而,据我所知,Android中存在一个bug,它无法通过BLE与iOS正常通信: 我是一个相当新的Android开发者(我大部分时间都在iOS上),所以我希望有人能提供一些建议,看看这个bug现在是否会成为一个阻碍?如果没有,请提供有关如何编写此概念验证

作为概念证明,我想编写一个Android应用程序,它可以通过蓝牙低能量(BLE)通过苹果通知中心服务(ANCS)从iPhone 5接收通知(如短信、日历等)。Android设备正在运行KitKAT4.4,因此这似乎是可能的,因为它还支持BLE。然而,据我所知,Android中存在一个bug,它无法通过BLE与iOS正常通信:


我是一个相当新的Android开发者(我大部分时间都在iOS上),所以我希望有人能提供一些建议,看看这个bug现在是否会成为一个阻碍?如果没有,请提供有关如何编写此概念验证的任何建议(来自iOS和Android要求)。

在iOS方面,您根本不需要做任何事情,因为ANCS一直在运行(只要启用了蓝牙),并且可以与客户端通信。在Android端,您需要使用Android.bluetooth包连接到设备,然后在iOS设备上订阅相应的蓝牙服务。这种握手舞有点棘手,但你实际上是在从安卓系统订阅iOS设备上的GATT属性,并监听这些属性上的“通知”。然后,您可以选择请求有关收到的每个通知的更详细信息。它需要对蓝牙/GATT服务有基本的了解,并对ANCS的特殊要求有相当深入的了解

ANCS的苹果规格如下:


如果您需要更多关于ANCS舞蹈的信息,请随时进一步澄清问题;在过去的几个月里,我一直在研究它。如果您在提出此问题后取得了进展,请向我们提供最新信息

我建议从两个示例应用程序开始:

  • 应用商店中的AHA NP。这将宣传ANCS服务,以便您可以在您的ANCS设备上发现它
  • 从bluetooth.org下载Android/iOS蓝牙示例应用程序,网址为:

  • 使用这两个应用程序,您可以在iOS设备上发布ANCS广告,并在Android设备上查看ANCS服务。从那里,您可以修改android示例应用程序,开始从iPhone读取值

    据我所知,这是一个建立BLE GATT连接到多个不同堆栈(iOS就是其中之一)的障碍,目前还没有发布的Android版本能够解决这个问题。我也不知道野外有什么地方能解决这个问题。如果你知道一些我不知道的事情,请回复并让我们知道?谢谢嗨,你能做这个应用吗?我也在做同样的工作,所以我想知道前进的方向