gpt4 book ai didi

objective-c - didEnterRegion 被多次触发

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:46:18 29 4
gpt4 key购买 nike

出于某种奇怪的原因,有时当我进入一个区域时,didEnterRegion 会被触发多达 10 次。有谁知道发生这种情况的可能原因是什么?我知道如果我处于边界可能会发生这种情况,但也许 Apple 有智能逻辑,不会在这些点触发。

这是怎么回事??

最佳答案

我已经看到,当您实例化了多个 CLLocationManager 实例时。假设您有多个需要使用位置的类,您在应用程序生命周期中分配/初始化位置管理器 4-5 次……它们都在监听委托(delegate)方法。

那么,如果我只有 4-5 个实例,为什么我会收到 10 个回调?很高兴你问。 :p 我相信 Apple 的区域监控委托(delegate)方法中存在一个错误,该方法会为每个实例触发两次。

解决方案是为位置管理器委托(delegate)创建您自己的单例类,并且只为整个应用程序使用您的位置管理器的一个实例。这将阻止您获得 4-5 x 2 次回调。然后你将像其他人一样只得到 2 个。

如果您想提供帮助,请复制我对这个问题的回答中的雷达,以便我们可以让 Apple 一劳永逸地解决问题。

why the didEnterRegion called twice ?

关于objective-c - didEnterRegion 被多次触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14027785/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com