草庐IT

geofence

全部标签

android - 当设备处于深度 sleep (打瞌睡)模式时,Geofence 未决 Intent 触发太迟

我需要在用户靠近给定地点时通知他。我为此使用地理围栏API。当我使用模拟位置在Android模拟器上测试应用程序时,一切正常。与模拟位置的真实设备相同。但是当我走路并且我的手机处于深度sleep模式时,地理围栏会在5到10分钟后触发。如果我在地理围栏半径内并且我解锁了我的手机,请打开任何使用我的地理围栏触发位置的应用程序。(Android5.1,摩托罗拉motoG第一代)下面是我注册地理围栏的方式:publicvoidregisterLocation(RegisterAlarmRequestModeldata){if(isLocationDetectionAllowed()&&isCo

禁用/重新启动位置服务时自动删除 Android Geofence

我已成功添加带有标志NEVER_EXPIRE的地理围栏。一切似乎都运行良好。但现在在测试时我发现,如果我停止定位服务,地理围栏将按预期停止工作。此外,当我再次启动定位服务时,我之前添加的地理围栏应该再次开始工作,但不会生成任何通知,而且一旦定位服务被禁用,地理围栏似乎会自动删除。我必须再次设置所有位置才能使地理围栏恢复工作状态。有什么建议或想法为什么会这样吗??编辑::当设备关闭/重新启动等时也会出现类似问题。因此,如果定位服务被禁用/设备重新启动,基本上所有注册的地理围栏都会过期。我试图通过Session处理其中的一些问题,但我正在寻找一种解决方案,通过该解决方案我们可以在启用位置服

带有 GPS 的 Android Geofencing API 错误?

我发现有些人报告了类似的问题,但没有找到答案。我使用的是在GoogleI/O2013中发布的androidGeofencingAPI。我遵循了“创建和监控地理围栏”类(class)及其示例。当我在Wi-Fi覆盖范围内使用此API时,它运行良好。问题是当我在外面的时候。它从未使用GPS跟踪位置,但GPS传感器已打开。我发现解决这个问题的唯一方法是通过调用强制应用程序使用GPSmLocationClient.requestLocationUpdates(mLocationRequest,mLocationListener);以及具有高精度优先级的mLocationRequestmLocat

java - 如何欺骗位置以在 Android 上使用 LocationClient 和 Geofences 进行测试?

我一直在使用LocationClient并设置了一个Geofence,但不知道如何测试它。问题是因为您无法在模拟器中运行该应用程序,因为LocationClient使用GooglePlayServices,而这在模拟器中不可用。据我所知,您也不能使用MockLocations,因为您通过创建Provider使用MockLocations,而LocationClient不允许您设置提供者。那么...我应该如何测试我的Geofence?(除了上车...)。 最佳答案 大多数手机都有调试设置以启用模拟位置。例如在我的三星S3上Settin

android - 地理围栏 GEOFENCE_TRANSITION_DWELLING 错误

Non-negativeloiteringdelayneedstosetwhentransitiontypesincludesGEOFENCE_TRANSITION_DWELLING是什么意思?当我尝试运行android网站提供的示例GeofenceDetection并将转换设置为DWELL时出现此错误。 最佳答案 根据doc在我的Geofence.Builder上添加setLoiteringDelay(intloiteringDelayMs)后错误消失了. 关于android-地理围栏

android - 由 : java. lang.SecurityException : com. example.geofences from uid 10049 引起 不允许执行 MOCK_LOCATION

我正在开发与GPS位置相关的应用程序,在为应用程序生成模拟位置点进行测试时遇到以下问题。引起:java.lang.SecurityException:来自uid10049的com.example.geofences不允许执行MOCK_LOCATION 最佳答案 我们需要做两步:第1步:在Androidlist中授予权限第2步:在您的真实设备中,转到设置-->开发人员选项-->模拟位置应用程序选项和选择您的应用进行测试。模拟位置工作正常...:)谢谢, 关于android-由:java.l

Android Geofence 仅适用于打开的应用程序

我已经对这个主题进行了很多天的认真研究......我在这里也看到了很多主题......但不幸的是我找不到解决方案....我正在编写一个使用新的GoogleAPIforGeofence的应用程序...好吧,我可以处理地理围栏的“输入”和“输出”,但前提是我的应用程序已打开!即使我打开了wifi、gps和3G,但应用程序不会触发任何事件...只要应用程序打开...我正在使用与文档http://developer.android.com/training/location/geofencing.html完全相同的GeofenceRequester类.即使类(class)相同,我也会在此处发布

android - Geofences 不触发(pendingintents 和 broadcastreceiver)

我已经将Android教程与Geofences一起使用,显然,当应用程序关闭时它不起作用。因此,在四处搜索之后,我注意到SO上的用户b-ryce使用了BroadcastReceiver,因此即使应用程序未处于Activity状态(linkforhisSOquestion)也会触发地理围栏。当我移出/移入注册位置时,我无法强制触发地理围栏。这是我的程序:/***GeoLocationlibrary*/mGeoLocation=newGeoLocation(sInstance);/***mReceiverinit*/mReceiver=newReceiver();sInstance.reg

Android Geofencing 示例应用程序仅在另一个应用程序使用 GPS 打开时才有效

我正在使用GeofenceAPISampleapplication我让它运行起来,似乎工作正常。我确实对其进行了修改,以使用BroadcastReceiver而不是IntentService。但只有当我打开其他一些使用GPS的应用程序(例如map或GPS测试器应用程序)时,我才会收到通知。如果我没有打开其中一个应用程序而我走进了地理围栏区域,什么也不会发生。但是只要我启动其中一个,我就会在几秒钟内收到通知。 最佳答案 我最终创建了一项服务,通过以相对较快的间隔请求位置更新来强制GPS保持Activity状态。虽然这对于“真实”应用程

android - 应用程序在后台时的 GeoFence 设备

我已经实现了geoFenceapi,并且一切正常。但是有一些问题,我想更多地澄清我的困惑。下面是一些困惑和问题:我希望我的用户在进入地理围栏区域时得到通知。我已经按照指南实现了GeofenceTransitionsIntentService,但当应用程序处于后台时它不会触发转换。我需要做什么?GeoFence过期时间:很明显,如果我们输入Never,它不会过期,但我对时间感到困惑。例如,如果我将它设置为10分钟,那究竟有什么作用?地理围栏会在创建后的给定时间后过期,还是会在用户到达该地点时过期,然后计时器开始计时?当用户到达那里时,我们如何让地理围栏过期。Google如何跟踪我们?地理