等到当前位置在 didFinishLaunchingWithOptions 中设置
Posted
技术标签:
【中文标题】等到当前位置在 didFinishLaunchingWithOptions 中设置【英文标题】:Wait Until Current Location is set in didFinishLaunchingWithOptions 【发布时间】:2011-01-21 16:21:07 【问题描述】:我的主页 UIView 需要当前位置坐标,我不希望在获得这些坐标之前调用它。我怎样才能最好地做到这一点?
在这段代码中,视图在当前位置更新之前被调用:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
currentLocation = [[CLLocation alloc] init];
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
[locationManager startUpdatingLocation];
TTNavigator *navigator = [TTNavigator navigator];
navigator.persistenceMode = TTNavigatorPersistenceModeAll;
TTURLMap *map = navigator.URLMap;
[map from:@"tt://HomeView" toViewController: viewController];
[navigator openURLAction:[TTURLAction actionWithURLPath:@"tt://HomeView"]];
【问题讨论】:
【参考方案1】:用户可以关闭定位服务。所以我不会那样做.. 而是在 didFinishLaunchingWithOptions 之后检查位置,以便解决您当前的问题。 并添加一个屏幕供用户在位置服务关闭时打开它。
【讨论】:
没有定位服务,应用就没用了。 是的,我明白了.. didFinishLaunchingWithOptions 不是检查的好地方.. 如果用户不允许使用定位服务,您的应用将永远无法打开。至少显示一些消息让用户知道。以上是关于等到当前位置在 didFinishLaunchingWithOptions 中设置的主要内容,如果未能解决你的问题,请参考以下文章
等到 GPS 启用,然后在 FusedLocationAPI 中获取 lat 和 long 值