android - cordova 插件 geofence - Android 无法在后台接收转换事件

标签 android cordova cordova-plugins geofencing

我正在利用this Geofencing plugin为iOS和Android构建一个位置感知的Cordova应用程序.

当我开始在 Android 设备上测试我的实现时,我发现地理围栏转换不会在检测到它们后立即在后台处理,而是“收集”,然后在下次应用程序时立即触发手动启动(“fire”我的意思是调用 window.geofence.onTransitionReceived() 方法)。

为了澄清,我禁用了包含的通知功能,只期望我的应用程序将事件传递给它,以便在后台静默更新我们的远程服务器。虽然 iOS 版本在后台成功接收了这些转换,但我不知道 Android 出了什么问题......

有人知道这个插件以及如何在 Android 上正确使用它吗? 我是不是错过了什么?

谢谢,多尔。

最佳答案

我遇到了类似的问题并提出了这个问题:https://github.com/cowbell/cordova-plugin-geofence/issues/53 。看来您无法在 Android 上在后台执行 javascript,因此这是限制。

我的解决方案是在 GeofencePlugin.java 中编写自己的 Java,更改以下方法来满足我的需求(在我的例子中创建 HttpClient 并发送 POST 请求)

public static void onTransitionReceived(List<GeoNotification> notifications)

关于android - cordova 插件 geofence - Android 无法在后台接收转换事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32852381/

相关文章:

android - 在两个 Android 应用程序之间共享 Phonegap 存储数据库

angular - Cordova 文件插件在使用 readAsDataUrl 时出现安全错误

java - 当转换发生时(进入和退出)cordova geofence插件在后台如何在后台调用PHP文件?

c# - 我可以在 C# 中运行 adb shell 命令,并且在拔下 USB 电缆时不会中断它吗?

Android:未调用自定义按钮 OnClickListener

javascript - Cordova 网络和相机 API 返回未定义

cordova - 当正常退出不起作用时,我的应用程序崩溃 - 对内存的影响

Android 相当于 iOS "scale to fill"

java - JSONException : No value for book_details

javascript - 如何使用phonegap在android中调用asp.net webservice