2017-10-23 16 views
0

問題がありますはiOSプロジェクトでのみ発生します。 Androidはうまく動作します。次の行を呼び出すと、Cross.Geolocator Xamarin.FormsのiOS - 私は場所を取得しません

App.Position = await CrossGeolocator.Current.GetPositionAsync(); 

プログラムはメインスレッドに戻りません。

私は私のInfo.plistファイルに追加:

<key>NSLocationWhenInUseUsageDescription</key> 
<string>You are about to use location!</string> 

私はCross.GeoLocatorバージョン3.0.4を持っています。私は4.Xにアップデートしようとしましたが、私のソリューションでは多くの競合がありましたので、このバージョンに戻しました。

+0

info.plistに 'NSLocationAlwaysUsageDescription'を設定するのを忘れたようです –

答えて

0

まず、iOSにパッケージをインストールしたことを確認してください。それが完了した後、私は文書Hereに従った。

あなたはiOSの11

<key>NSLocationAlwaysAndWhenInUseUsageDescription</key> 
<string>This app needs access location when open and in the background.</string> 

私は現在の場所は次のようになり得る方法の例については、あなたのInfo.plistに2つ目のエントリを追加する必要があります。

var locator = CrossGeolocator.Current; 
locator.DesiredAccuracy = 50; 
var position = await locator.GetPositionAsync(TimeSpan.FromSeconds(40)); 
var currentLat = position.Latitude; 
var currentLong = position.Longitude; 
関連する問題