Boet Wifi närhet C# Windows Phone App (6 / 10 steg)
Steg 6: Start Inställningar...
På app start-up, om hem Wifi har redan lagts det läses från en lokal lagringsplats och visas på skärmen så att du kan verifiera att det är korrekt.
offentliga MainPage()
{
Detta. InitializeComponent();
Detta. NavigationCacheMode = NavigationCacheMode.Required;
var inställningar = ApplicationData.Current.LocalSettings;
var nyckel = "nameHomeWifi";
textWifiName.Text = "" + inställningar. Värden [nyckel];
}
Om hem Wifi inte har ställts in eller behöver återställas eftersom du ändrade ditt Wifi namn sedan kallas följande kod när du klickar på knappen "Ställ Wifi hem Monitor". I princip det loopar igenom nätverksanslutningar på telefonen och finner den aktiva stencilen. Detta namn är sedan skrivs till lokal lagring och sedan visas i app i textblocket.
privat async void buttonRegisterWifiMonitor_Click (objekt avsändare, RoutedEventArgs e)
{
Få hem Wifi namn
var ssid = "";
foreach (var connectionProfile i NetworkInformation.GetConnectionProfiles())
{
om (connectionProfile.IsWlanConnectionProfile & & connectionProfile.GetNetworkConnectivityLevel()! = NetworkConnectivityLevel.None)
{
SSID = connectionProfile.ProfileName;
var inställningar = ApplicationData.Current.LocalSettings;
var nyckel = "nameHomeWifi";
inställningar. Värden [nyckel] = ssid;
textWifiName.Text = ssid;
bryta;
}
}
När namnet bestäms det samma knapp klicket fortsätter och registrerar bakgrundsaktivitet.
Registrera dig bakgrundsprocess
string myTaskName = "BackgroundWifiCheck";
Kontrollera om aktiviteten är redan registrerad
foreach (var cur i BackgroundTaskRegistration.AllTasks)
om (cur. Value.Name == myTaskName)
{
väntar (nya MessageDialog ("Wifi Monitor är redan registrerat")). ShowAsync();
hemkomst.
}
Windows Phone app måste kalla detta att använda utlösare (se MSDN)
väntar på BackgroundExecutionManager.RequestAccessAsync();
registrera en ny uppgift
BackgroundTaskBuilder taskBuilder = ny BackgroundTaskBuilder();
taskBuilder.Name = myTaskName;
SystemTrigger trigger = new SystemTrigger(SystemTriggerType.NetworkStateChange, false);
taskBuilder.SetTrigger(trigger);
taskBuilder.TaskEntryPoint = typeof(BackgroundWifiCheck.TheTask). FullName;
BackgroundTaskRegistration registrering = taskBuilder.Register();
väntar (nya MessageDialog ("Wifi Monitor är nu registrerad")). ShowAsync();
Den registrerar den händelse som utlöses när en "NetworkStateChange" har upptäckts. När det är registrerat visas ett meddelande informerar dig om dess framgång.
Det är allt som människan inför del av app gör... men för magic... fortsätter till nästa steg!