1

我在我的应用程序中使用位置服务。当我在位置服务开启的情况下运行应用程序时,一切都很完美。但是,如果我在全局范围内关闭位置服务,然后返回应用程序。它给我一个弹出窗口,说“打开位置服务以允许确定您的位置”,并带有两个按钮“设置”和“取消”。

如果我点击设置,它会将我带到设置应用程序(如预期的那样)。但如果我点击“取消”,什么也不会发生。我的应用程序无法获取事件并且它冻结,等待发生某些事情。如果我在那之后触发其他一些使用当前位置的事件,那么它会获得授权失败,并且应用程序变得正常。

为了处理这种行为,我想检测“取消”按钮上的触摸事件。有没有办法做到这一点。因为我认为这个弹出是由操作系统而不是 SDK 处理的。

如果我错了,请纠正我。

4

1 回答 1

0

This is where to detect the touch event on "Cancel" button:

- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error{

}

Probably, Your implementation of it, causes the freezes (And not the iOS). Try and use this empty implementation just to make sure...

于 2012-11-25T20:38:31.720 回答