我正在使用用戶使用OAuth2登錄的Windows 8 Phone應用程序。登錄後,我可以存儲他們的訪問權限和刷新令牌,並使用它們對用戶進行身份驗證以備將來使用。以編程方式選擇首先顯示哪個頁面
如何選擇在應用程序打開時首先加載哪個頁面?我可以檢查訪問令牌是否存在,如果存在,我想加載「配置文件」頁面。如果不是這樣(即,如果用戶從未登錄過,或者在上次會話後註銷),那麼我需要顯示登錄頁面。
我想在用戶打開應用程序時將這些頁面顯示爲第一個頁面。
我正在使用用戶使用OAuth2登錄的Windows 8 Phone應用程序。登錄後,我可以存儲他們的訪問權限和刷新令牌,並使用它們對用戶進行身份驗證以備將來使用。以編程方式選擇首先顯示哪個頁面
如何選擇在應用程序打開時首先加載哪個頁面?我可以檢查訪問令牌是否存在,如果存在,我想加載「配置文件」頁面。如果不是這樣(即,如果用戶從未登錄過,或者在上次會話後註銷),那麼我需要顯示登錄頁面。
我想在用戶打開應用程序時將這些頁面顯示爲第一個頁面。
您應該檢查是否在獨立存儲中存在的令牌,並根據該定位到一個或另一個頁面。
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>
我會做的Application_Launching
部分的If
聲明App.xaml.cs
當我嘗試清除導航頁面的參數在我的清單文件,它不會讓我保持空白。有任何想法嗎?對於您的替代方案,我在哪裏可以放置''? –
tverghis
@ user2515526右鍵單擊清單文件並單擊「查看代碼」。找到DefaultTask標記並移除NavigationPage屬性。 –
謝謝,完美無缺。乾杯! – tverghis