2014-09-04 83 views
1

我想在iOS Xamarin中获取用户的当前位置。这是我的代码。获取用户在Xamarin iOS中的当前位置

CLLocationManager locationManager = new CLLocationManager(); 
locationManager.StartUpdatingLocation(); 
locationManager.StartUpdatingHeading(); 

locationManager.LocationsUpdated += delegate(object sender , CLLocationsUpdatedEventArgs e) 
{ 
    foreach(CLLocation loc in e.Locations) 
    { 
     Console.WriteLine(loc.Coordinate.Latitude); 
    } 
}; 

1.当我启动我的应用程序,一个对话框“APPNAME想用你的当前位置”持久性有机污染物,并在一两秒钟后,自行解散(之前,我可以点击任何按钮)。这是为什么发生?

2. 当我手动(设置 - >隐私 - >位置)为我的应用程序启用位置服务时,应用程序正常工作。我希望这是以编程方式发生的。我已经检查this post也类似question。我在哪里错了?

请帮忙

回答

0

这是用于iOS8吗?您是否调用了RequestWhenInUseAuthorization?

至于关闭对话框,这很可能是由于locationManager变量未在类级别声明。

+0

谢谢你的回复。这不适用于iOS8,移动locationManager到类级别没有做到这一招。对话框仅在iOS7上解散,在iOS6上正常工作!奇怪! – 2014-09-30 05:59:37