问题标签 [clregion]

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 回答
9428 浏览

iphone - 如何禁用使用 -startMonitoringForRegion 注册的任何 CLRegion 对象?

我正在使用 NavigationController 来显示用户可用的地理围栏列表。在顶部有一个全局开/关开关,我想用它来禁用使用 CoreLocation -startMonitoringForRegion 注册的任何栅栏。

我的围栏似乎注册正常并且大部分时间都在工作,但无论我单独禁用围栏多少次,我仍然收到紫色位置箭头,表示系统仍在监控我的位置和/或围栏。

当我单独禁用我的栅栏时,我就是这样做的。

我已经阅读了 Apple 关于 CoreLocation 的所有文档以及这些方法的使用,但我已经走到了尽头。

我试过打电话[locationManager monitoredRegions];,但它只返回活动围栏,只有当我加载了我的详细视图时。我无法在程序中的任何其他地方调用它并让它返回我的任何栅栏,即使我知道它们应该处于活动状态。如果有人对下一步去哪里有任何建议,我会全力以赴。

0 投票
1 回答
2296 浏览

ios - 究竟哪些 iOS 设备支持区域监控?

从我可以从Apple 示例区域监控代码的运行时要求中理解,区域监控可在 iPhone 4、iPad 2 Wifi + 3G 或更高版本上使用。所以我假设它在 3G 的 iPad1 或 iPhone 3G/3GS 上不可用。

这是一个正确的解释吗?我无法对此进行测试,因为我没有所有这些设备,也找不到有关此的官方文档。

PS:我知道我可以通过调用regionMonitoringAvailable方法在代码中检查它,但我需要这些信息来决定我的应用程序的架构,所以我需要预先知道这一点。

0 投票
4 回答
8563 浏览

ios - didEnterRegion 在前台工作,但不在后台或其他 VC 中工作

如果应用程序正在运行并且 CLLocationManagerDelegate 类是前台(即可见),那么 didEnterRegions 会触发,我会同时获得 NSLog 和 AlertView。但是,当应用程序在后台时,或者本质上,如果屏幕显示除委托类之外的任何内容,我什么也得不到。

我在 plist 中的“必需的后台模式”下设置了“应用程序注册以进行位置更新”,尽管我不确定这是否有必要。

这是我认为的相关代码,尽管我可能是错的(并且很乐意添加更多)。我应该注意 viewDidLoad 中的所有内容都包含在 if 中,它检查区域监控是否可用并启用。

这是我在 AppDelegate.m 中获得被监控区域列表的地方:

我调用 startMonitoringForRegion 两次,这里是主要的地方:

因为我觉得它可能很重要,所以这里是 locationManager 的 getter:

更新 1:通过 Apple 论坛(我在其中交叉发布)有人提到 AlertView 只会显示在前台。NSLog 仍然没有触发。我假设这应该有效。

0 投票
1 回答
4291 浏览

ios - 地理围栏 iOS 6

我正在创建一个应用程序,告诉用户他们是否在目的地附近。我正在计算currentLocation目的地和目的地之间的距离。我在里面做计算didUpdateLocations。它正在工作,但我已经看到有一些方法可以处理这个问题,而无需进行任何数学运算。

我正在注册该地区CLLocationManager;但是似乎这些方法didExitRegiondidEnterRegion没有被调用。

这是我注册区域的代码部分:

我在这里做错了吗?

0 投票
1 回答
1569 浏览

ios - UILocalNotification presentNotificationNow 问题

这个问题一直让我发疯。我想要做的是在用户进入某个区域时触发通知。但是,我想要的是,如果用户正在使用该应用程序显示一条警报消息,并且如果该应用程序在后台显示一个本地通知。

这是我的代码:

我之前做的是工作。这是午餐本地通知,而不询问应用程序的状态是后台还是活动。我只是在didEnterRegion触发时立即通知通知。但是现在我可以让它工作了。

我错过了什么吗?

0 投票
1 回答
2835 浏览

iphone - 为什么 didEnterRegion 调用了两次?

我在我的 iOS 应用程序中使用位置服务,即区域监控,这是我的代码

当应用程序在前台时它工作正常。它向我显示日志:“输入区域..”和“退出区域..”,但是当应用程序进入后台时,相同的日志在几分之一秒内打印两次,即委托方法调用两次,我不需要,有什么办法可以避免调用 2 次? 还是在创建或监视区域时犯了任何错误?请帮助我..提前谢谢..

0 投票
1 回答
1025 浏览

ios - 在 MKMapView 中覆盖城市、地区等

如何在城市内特定城市或地区的 MKMapView 上叠加几何图形?

我在看CLGeocoder,MKOverlayViewCLRegion,但我有点困惑。

如何获取创建 MKPolygon / 叠加层的坐标?

在 Apple 的示例中,他们已经为科罗拉多州获得了 4 分。我是否必须自己从某种数据库中手动填充这些点?或者像 CLGeocoder 这样的东西可以访问给定地区/城市/州的几何形状吗?

0 投票
4 回答
6839 浏览

ios - 将 GMSVisibleRegion 转换为 CLRegion 或 MKCoordinateRegion

我正在使用 GoogleMaps SDK,目前我正在尝试将 GMSVisibleRegion 转换为 CLRegion。

GMSVisibleRegion 定义为:

最快的方法是什么?

不幸的是,很难理解开发人员命名“近”和“远”的含义。我认为这条评论也很有用:

非常感谢!

编辑:好的,我的第一步是创建一个 GMSVisibleRegion 的 MKCoordinateRegion。

我建议使用以下代码将 aa GMSVisibleRegion 转换为 MKCoordinateRegion。任何异议。

0 投票
1 回答
1500 浏览

ios - iOS:提醒用户特定地理位置区域(纬度,经度)

我正在尝试为用户实现一个功能Geo location,我正在静态设置latitudelongitude信息,当应用程序启动时,如果用户在该区域内,我将显示一条消息“您已到达办公室”否则“你要离开办公室”。我已经实现了下面的代码来实现这一点,我尝试通过步骤和车辆四处移动,但在这两种情况下它总是显示“你已经到达办公室”,但是我离那个位置 2 公里!我认为问题在于代理中地理数据的比较CLLocationManager

我正在努力完成以下事情!

  1. 如果用户输入了地理位置,他应该是“警觉的”。--- 如何匹配位置?
  2. 如果在该地理位置内移动,则代码应该监视此活动!--- 需要设置所需的精度属性吗?
  3. 我希望我的代码不断检查用户地理位置,我该怎么做?--- 需要调用函数NSTimer吗?

我发现关于 SO 的许多问题都问了同样的问题,但没有人给出匹配的答案!有人请指导我是否朝着正确的方向前进,因为此代码未显示!:)

0 投票
3 回答
538 浏览

ios - startMonitoringForRegion 未发送到 didEnterRegion 或 didExitRegion

我有一个基于位置的应用程序,尽管该区域是正确的,但该应用程序永远不会移动到didEnterRegiondidExitRegion

这是从我的位置打印出来的字符串:

输入坐标纬度的新位置:51.509980 经度:-0.133700

这是从该区域打印出来的字符串:

在区域中输入新位置(标识符伦敦)<+51.50998000,-0.13370000> 半径 30.00m