2013-12-08 26 views
2

我正在使用用戶使用OAuth2登錄的Windows 8 Phone應用程序。登錄後,我可以存儲他們的訪問權限和刷新令牌,並使用它們對用戶進行身份驗證以備將來使用。以編程方式選擇首先顯示哪個頁面

如何選擇在應用程序打開時首先加載哪個頁面?我可以檢查訪問令牌是否存在,如果存在,我想加載「配置文件」頁面。如果不是這樣(即,如果用戶從未登錄過,或者在上次會話後註銷),那麼我需要顯示登錄頁面。

我想在用戶打開應用程序時將這些頁面顯示爲第一個頁面。

回答

2

您應該檢查是否在獨立存儲中存在的令牌,並根據該定位到一個或另一個頁面。

private void Application_Launching(object sender, LaunchingEventArgs e) 
{ 
    using (var folder = IsolatedStorageFile.GetUserStoreForApplication()) 
    { 
     if (folder.FileExists("SomeFileWithToken.txt")) 
     { 
      RootFrame.Navigate(new Uri("/ProfilePage.xaml", UriKind.Relative)); 
     } 
     else 
     { 
      RootFrame.Navigate(new Uri("/LoginPage.xaml", UriKind.Relative)); 
     } 

    } 
} 

此外,編輯您的清單,並在應用程序的UI選項卡清除導航頁面參數

或者代碼:

<Tasks> 
    <DefaultTask Name ="_default"/> 
</Tasks> 
+0

當我嘗試清除導航頁面的參數在我的清單文件,它不會讓我保持空白。有任何想法嗎?對於您的替代方案,我在哪裏可以放置''? – tverghis

+0

@ user2515526右鍵單擊清單文件並單擊「查看代碼」。找到DefaultTask標記並移除NavigationPage屬性。 –

+0

謝謝,完美無缺。乾杯! – tverghis

0

我會做的Application_Launching部分的If聲明App.xaml.cs

相關問題