C# を使用して Windows 8.1 ストア アプリを開発しましたが、ユーザーの現在の場所を検出したいと考えています。Wi-Fi に接続しているときは完璧な位置情報を取得できますが、3G/4G ネットワークに接続しているときは、現在地がまったく取得されないか、近くの場所が表示されることがあります。現在の場所を検出するために次のコードを使用しています
geolocator = new Geolocator();
geolocator.DesiredAccuracy = PositionAccuracy.High;
geolocator.DesiredAccuracyInMeters = 1000;
geolocator.MovementThreshold = 100;
//geolocator.ReportInterval = 500;
try
{
Geoposition mygeoPosition = await geolocator.GetGeopositionAsync();
}
catch(UnauthorizedAccessException ex)
{
UserMessageUtil.ShowMessage("Location is disabled in Settings");
await Launcher.LaunchUriAsync(new Uri("ms-settings-location:"));
}
catch(Exception ex)
{
UserMessageUtil.ShowMessage("We are sorry, location services are unavailable.");
}
geolocator.PositionChanged += geolocator_PositionChanged;
誰かが提案できますか、私は何か間違ったことをしていますか? 3G/4G ネットワークで現在地を確認できる他のアプリはありますか?