2017-01-29 67 views
0

我试图做一个简单的天气应用,但我得到一个异常。 我已激活位置。我尝试在模拟器中运行的手机,没有工作 the exceptionSystem.UnauthorizedAccessException:'访问被拒绝的位置UWP

using System; 
using System.Collections.Generic; 
using System.IO; 
using System.Linq; 
using System.Runtime.InteropServices.WindowsRuntime; 
using Windows.Foundation; 
using Windows.Foundation.Collections; 
using Windows.UI.Xaml; 
using Windows.UI.Xaml.Controls; 
using Windows.UI.Xaml.Controls.Primitives; 
using Windows.UI.Xaml.Data; 
using Windows.UI.Xaml.Input; 
using Windows.UI.Xaml.Media; 
using Windows.UI.Xaml.Navigation; 


namespace TryToMakeWeatherApp 
{ 
    /// <summary> 
    /// An empty page that can be used on its own or navigated to within a Frame. 
    /// </summary> 
    public sealed partial class MainPage : Page 
    { 
     public MainPage() 
     { 
      this.InitializeComponent(); 
     } 

     private async void Button_Click(object sender, RoutedEventArgs e) 
     { 
      var pos = await LocationManage.GetLocation(); //Here i'm geting the error 
      var lat = pos.Coordinate.Latitude; 
      var lon = pos.Coordinate.Longitude; 


      var weather = WeatherMap.GetWeather(lat, lon).ToString(); 
      WeatherTxt.Text = weather; 
     } 
    } 
} 

这是代码的MainPage。 这是LocationManage类

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using Windows.Devices.Geolocation; 

namespace TryToMakeWeatherApp 
{ 
    class LocationManage 
    { 
     public async static Task<Geoposition> GetLocation() 
     { 
      var accessStatus = await Geolocator.RequestAccessAsync(); 

      var geolocator = new Geolocator { DesiredAccuracyInMeters = 0 }; 

      var position = await geolocator.GetGeopositionAsync(); 

      return position; 


     } 
    } 
} 
+0

https://msdn.microsoft.com/en-us/windows/uwp/maps-和位置/获取位置 您是否试过手动允许通过设置访问您的应用程序? –

+0

我的应用程序没有显示在列表中给予permision。 –

+0

不要忘记与用户拒绝测试权限。 –

回答

2

在package.manifest文件必须打开这个功能太

+0

非常感谢!现在它正在工作 –

相关问题