cordova 插件地理围栏 - Android 无法在后台接收转换事件
cordova plugin geofence - Android can't receive transition events in the background
我正在使用 this Geofencing plugin.
为 iOS 和 Android 构建位置感知 Cordova 应用程序
当我开始在我的 Android 设备上测试我的实现时,我发现地理围栏转换不会在检测到后立即在后台处理,而是 "collect" 然后触发下次手动启动应用程序时一次全部启动("fire" 我的意思是调用 window.geofence.onTransitionReceived() 方法)。
为了澄清,我禁用了包含的通知功能,只希望我的应用程序将事件传递给它,以便在后台静默更新我们的远程服务器。虽然 iOS 版本在后台成功接收了这些转换,但我无法弄清楚 Android 有什么问题...
有谁知道这个插件以及如何为 Android 正确使用它?
我错过了什么吗?
谢谢,Dor。
我遇到了类似的问题并提出了这个问题:https://github.com/cowbell/cordova-plugin-geofence/issues/53。 Android 似乎无法在后台执行 javascript,所以这是限制。
我的解决方案是在 GeofencePlugin.java 中编写我自己的 Java,更改以下方法以满足我的需要(在我的例子中创建一个 HttpClient 并发送一个 POST 请求)
public static void onTransitionReceived(List<GeoNotification> notifications)
我正在使用 this Geofencing plugin.
为 iOS 和 Android 构建位置感知 Cordova 应用程序当我开始在我的 Android 设备上测试我的实现时,我发现地理围栏转换不会在检测到后立即在后台处理,而是 "collect" 然后触发下次手动启动应用程序时一次全部启动("fire" 我的意思是调用 window.geofence.onTransitionReceived() 方法)。
为了澄清,我禁用了包含的通知功能,只希望我的应用程序将事件传递给它,以便在后台静默更新我们的远程服务器。虽然 iOS 版本在后台成功接收了这些转换,但我无法弄清楚 Android 有什么问题...
有谁知道这个插件以及如何为 Android 正确使用它? 我错过了什么吗?
谢谢,Dor。
我遇到了类似的问题并提出了这个问题:https://github.com/cowbell/cordova-plugin-geofence/issues/53。 Android 似乎无法在后台执行 javascript,所以这是限制。
我的解决方案是在 GeofencePlugin.java 中编写我自己的 Java,更改以下方法以满足我的需要(在我的例子中创建一个 HttpClient 并发送一个 POST 请求)
public static void onTransitionReceived(List<GeoNotification> notifications)