问题标签 [geofencing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
6333 浏览

android - 在 Android 中进入 GeoFence 时无法显示通知

GeoFencing在 Android 上工作,我被困在某一点上。我的任务是在notification用户进入/退出Geofence我定义的区域时向他展示。

这是我的代码:

Activity class

GeofenceReceiver class

AndroidManifest.xml容器接收器

所以基本上我可以看到我的 GeoFence 被创建,但我没有收到同样的通知。

有人对此有解决方案吗?

0 投票
1 回答
1699 浏览

c# - BackgroundTaskBuilder Register() 问题

当遇到问题时,我正在使用地理围栏开发应用程序:

当我尝试为地理围栏注册后台任务时出现 ArgumentException(值不在预期范围内)。

来自 MSDN 的示例也有同样的问题。为了清楚起见,我将显示示例中的代码(示例链接:http ://code.msdn.microsoft.com/windowsapps/Geolocation-2483de66#content 使用场景 5, http: //msdn.microsoft.com/en-us/ library/windows/apps/dn440583.aspx - 说明如何测试)。

我所做的一切:

  1. 在 Visual Studio 中构建我的应用程序。
  2. 先在本地部署应用,在设置中将应用添加到锁屏。
  3. 关闭在本地运行的应用程序。
  4. 在 Visual Studio 模拟器中启动您的应用程序。
  5. 调用 RegisterBackgroundTask(..)(场景 5 中只需按下按钮注册)

有来自 MSDN 示例的代码,我评论了在模拟器中成功部署应用程序 - 标记为 ////// [我的更改] ////////

异常落在字符串上: geofenceTask = geofenceTaskBuilder.Register();

有谁能够帮我?

PS msdn 上的相同问题线程 - http://social.msdn.microsoft.com/Forums/en-US/3d69f2f9-93e0-401b-8a13-598dc671fa4f/backgroundtask-register?forum=winappswithcsharp

0 投票
2 回答
7525 浏览

android - 设备重新启动后,地理围栏是否在 android 中保持活动状态

我正在编写一个应用程序,当有人在安装应用程序的整个生命周期内进入/退出多个站点时,它需要使用地理围栏。

当我第一次安装应用程序时,我的地理围栏实现(非常类似于下面的第二个链接)一切正常,无论是在移入/移出地理围栏时,还是在使用模拟位置来模拟它时,直到设备重新启动。

在重新启动时,模拟位置和实际进出地理围栏似乎都不会触发事件并将未决意图触发到我的广播接收器。

我查看了以下三个链接,并且还阅读了相当多的文档,但我无法在任何地方找到明确的答案,直接说注册的地理围栏在重新启动后仍然存在或不存在。

这些是我在堆栈溢出中查看的链接: Android 地理围栏是否能在重启后幸存下来?

Android Geofence 最终停止获取转换意图

Android 地理围栏是否保持活动状态直到删除/过期或仅在我的 PendingIntent 启动之前

如果有人碰巧知道他们是否会在重新启动后坚持下去,或者如果他们没有解决,那将不胜感激!我目前的最后一个希望是为 BOOT_COMPLETED 创建一个侦听器并在启动时重新注册它们,但我更愿意只在绝对必要的情况下这样做。

提前非常感谢!

编辑:虽然我还没有找到明确的(书面)答案,但我很确定 TonyC 先生发布的内容是正确的,并选择了该解决方案。非常感谢托尼C!

如果有人想查看我的解决方案,我会在设备启动时监听启动完成操作,然后重新注册我需要的所有地理围栏。

这是在清单中:

然后为其创建一个广播接收器,它将在启动时重新注册地理围栏:

还值得注意的是,如果您在启动时处于地理围栏内,这通常会在地理围栏注册后触发地理围栏的未决意图。

因此,例如,如果地理围栏启动了一个应用程序,那么当您启动恰好位于地理围栏中的设备时,一旦启动完成广播接收器注册了地理围栏,它也会打开该应用程序,并且位置服务已经确定了您的位置是。

希望这对某人有所帮助。

0 投票
1 回答
273 浏览

ibm-mobilefirst - 地理围栏 API 工作灯

我正在开发一个Worklight使用Geofence APIs 的应用程序。一切都在 Worklight Web 模拟器上运行,但我不知道如何在移动设备上测试此功能。

如何测试进入Geofence半径范围内?我可以效仿GPS coordinates吗?

谢谢,

0 投票
3 回答
336 浏览

triggers - 如何在 Worklight 中动态设置位置触发器?

我需要为从 Worklight 适配器获得的每个位置动态创建新的地理围栏圈。我需要使用循环来完成,因为我不知道后端服务中定义了多少位置。此外,可以在应用程序运行的同时定义一个新位置。

我已经看到了一组已建立位置的几个样本,但我不知道如何让它在我的场景中工作......

0 投票
1 回答
144 浏览

location - 哪个触发器在 Worklight 地理围栏中启动回调?

我使用 Worklight 地理围栏 API 来定义地理围栏圈,如下所示:

如何获取有关哪个触发器正在运行回调的一些信息?调用回调后,我需要在应用程序中显示该地理围栏的信息...

0 投票
1 回答
273 浏览

android - 每次服务器推送时添加新的地理围栏

最初,我向 LocationClient 添加了 5 个地理围栏。

一段时间后,我需要添加新的地理围栏,比如 3。

我该怎么做才能激活所有 8 个地理围栏。

我是否应该删除最初的 5 个地理围栏并一次添加所有 8 个。或者我应该添加 3 个新的地理围栏,如下所示。

0 投票
1 回答
2227 浏览

android - addProximityAlert 无法按预期工作

ios sdk 有很好的区域监控功能。我在android中需要类似的东西,我认为我们有两种选择。地理围栏和 LocationManager。

地理围栏有非常整洁的示例和错误,所以我更喜欢 LocationManager。除了一个之外,Everyting 在 LocationManager 中都可以正常工作。如果您将当前位置添加为 ProximityAlert ,它会立即触发“ENTERING”,但这是我当前的位置,并不意味着我进入了该区域。因此,如果我在区域内,每次启动应用程序时都会触发“ENTERING”。(即使我没有移动)

只有当用户真正进入该区域时,我才能解决这个问题并触发事件?

这是我为我的位置添加 PeddingIntents 的方式。

接收者

显现

非常感谢

PS:iOS没有这个问题,他们的文档解释了它

注册授权应用程序后立即开始对地理区域的监控。但是,不要期望立即收到事件。只有越界才会产生事件。因此,如果在注册时用户的位置已经在区域内,则位置管理器不会自动生成事件。相反,您的应用程序必须等待用户跨越区域边界,然后才能生成事件并将其发送给委托。也就是说,您可以使用 CLLocationManager 类的 requestStateForRegion: 方法来检查用户是否已经在区域边界内。

0 投票
1 回答
2294 浏览

ios - CLLocationManager startMonitoringForRegion:设备重启后不重新启动应用程序

好的,所以我目前有一个应用程序,我在其中注册要使用该CLLocationManager startMonitoringForRegion方法监控的地理围栏。当应用程序位于前台和后台时,这可以正常工作。

我还设置了适当的 plist 值:

什么不起作用

设备重启后,应用程序不会重新启动。如果我startMonitoringSignificantLocationChanges在进入后台之前设置,我可以强制这种情况发生。但是这种方法会消耗更多的电池寿命,而且我并不总是需要位置,只要我打破地理围栏。

地区的文档说:

In iOS, the regions you register with the location manager persist between launches of your application. If a region crossing occurs while your iOS app is not running, the system automatically wakes it up (or relaunches it) in the background so that it can process the event. When relaunched, all of the regions you configured previously are made available in the monitoredRegions property of any location manager objects you create.

问题

是否有可能(在使用地理围栏区域时)让系统在系统重新启动后重新启动我的应用程序,而不使用startMonitoringSignificantLocationChanges

编辑:我的目标是 iOS6 和 iOS7

0 投票
2 回答
1621 浏览

ios - iOS 7 区域监控无法可靠触发

我已经设置了一个只有区域监控而没有其他功能的应用程序。我正在通过在前台模式下运行(而不是后台模式)进行测试。它在带有 ios 7.0.4 的 iphone 5 上运行。它启用了后台应用程序刷新和位置服务以及对此应用程序的位置授权。

我观察到了一些非常奇怪的事情。当我使用模拟器跨越边界时,有时didEnterRegion/didExitRegion被调用。但有时,无论我在模拟中切换多少次边界,它都不会被调用。在我更改模拟后,有时会显着迟到(几分钟)。

我检查monitoredRegions以确保我要监视的区域是有效的,并且它是有效的。监测区域半径约100m。我使用 2 个模拟点,1 个在内部,1 个在不同的城市。我用于startMonitoringForRegion监视该区域。

我在这里错过了什么吗?