2

Location Service API へのアクセスを無効にするにはどうすればよいですか?

Microsoft Development Center から次のヒントを含む手紙を受け取りました。

アプリはアプリ内設定を提供する必要があります。これにより、ユーザーは、アプリによる Location Service API からの位置情報へのアクセスと使用を有効または無効にすることができます。

これを行う方法について、誰かがさらに支援を提供できますか?

4

2 に答える 2

3

InitializeComponent();このコードを MainPage.xaml の直後に貼り付けます。この行で IsolatedStorage への参照を追加する必要がありますusing System.IO.IsolatedStorage;

if (IsolatedStorageSettings.ApplicationSettings.Contains("LocationConsent"))
{
    return;
}
else
{
    MessageBoxResult result = MessageBox.Show("Allow this app to access your location?", "Location", MessageBoxButton.OKCancel);

    if (result == MessageBoxResult.OK)
    {
       IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = true;
    }
    else
    {
       IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = false;
    }
    IsolatedStorageSettings.ApplicationSettings.Save();
}

また、次のコードを持つToggleSwitchを使用してSettings.xamlページを作成します。

if (IsolatedStorageSettings.ApplicationSettings.Contains("LocationConsent"))
{
    if ((bool)IsolatedStorageSettings.ApplicationSettings["LocationConsent"] == true)
    {
       locationSwitch.IsChecked = true;
    }
    else
    {
       locationSwitch.IsChecked = false;
    }
}
else
{
    MessageBoxResult result = MessageBox.Show("Allow this app to access your location?", "Location", MessageBoxButton.OKCancel);

    if (result == MessageBoxResult.OK)
    {
       IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = true;
    }
    else
    {
       IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = false;
    }
    IsolatedStorageSettings.ApplicationSettings.Save();
}

private void locationSwitch_Checked(object sender, RoutedEventArgs e)
{
    if (IsolatedStorageSettings.ApplicationSettings.Contains("LocationConsent"))
    {
       IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = true;
       IsolatedStorageSettings.ApplicationSettings.Save();
    }
}

private void locationSwitch_Unchecked(object sender, RoutedEventArgs e)
{
   if (IsolatedStorageSettings.ApplicationSettings.Contains("LocationConsent"))
   {
      IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = false;
      IsolatedStorageSettings.ApplicationSettings.Save();
   }
}

また、位置情報/GPS データを使用するページには、次のコードが含まれています。

if ((bool)IsolatedStorageSettings.ApplicationSettings["LocationConsent"] == true)
{
     //Do Something
}
else
{
     MessageBox.Show("Please enable location services to use this feature. You can turn it on from Settings.");
}

これは確かに役立ちます。私も同じものを使っています。これがあなたにも役立つ場合は、賛成票を投じて回答としてマークしてください:)

于 2013-05-09T18:54:42.247 に答える
0

あなたのアプリは位置情報サービスを使用しており、それを無効にする機能が必要ですか、それとも一般的な質問ですか?

初めての場合は、データの収集を停止し、アプリで無効にしてください。2番目の場合は、WPmanifestに移動してチェックを外します

于 2013-05-07T22:30:46.830 に答える