CodenameOne BluetoothLe连接的后台任务

我正在开发一个使用Codename One的应用程序,它连接到一个蓝牙LE专有的外部设备,并logging接收到的数据(平均数据大约每秒钟到达一次)。 我正在使用蓝牙LE CN1库 (Cordova 插件的包装)。

该应用程序应该能够接收和logging数据,即使不在前景,我不知道如何在CodenameOne中做的方式,系统将不会自行closures它。

我已经编写了一个原生的Android应用程序,在这个应用程序中,在与外部BTLE设备连接期间使用持久通知的服务 – 连接丢失(或者用户取消连接)时退出后台服务。 有没有办法在CodenameOne中做同样的事情,在Android和iOS上都可以使用? 我知道我可以编写本地代码来做到这一点,但我仍然怀疑,如果我仍然可以使用插件 – 我想避免编写应用程序本机的两个操作系统的整个蓝牙连接模块,因为这种否定点使用CodenameOne。

我没有尝试过只是产生一个Java线程,因为它看起来不会真的工作,因为它被转换为本地代码…或者它呢?

PS:我已经find了解决我的问题的方法,最接近我能find的就是CodenameOne背景音乐播放,但这只是为了音乐播放,据我所知。

我们将背景行为与iOS中可能的背景行为进行了对比,如下所示: https : //developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html

由于这个限制和限制比Android的限制更多,所以我们一次映射这个用例。 目前我们支持位置,音乐播放和获取。

由于蓝牙支持本身是相当新的,目前我们还没有支持,尽pipe可能通过包含ios.plistInject 构build提示来支持它,从而支持这种背景行为。 这可能需要一些本地代码来正确地绑定这个行为。