2013-12-08 2 views
2

사용자가 OAuth2를 사용하여 로그인하는 Windows 8 Phone 앱에서 작업하고 있습니다. 로그인 한 후에는 액세스 및 새로 고치기 토큰을 저장하고 나중에 사용할 수 있도록 사용자를 인증하는 데 사용할 수 있습니다.프로그래밍 방식으로 처음 표시 할 페이지 선택

앱을 열 때 먼저로드 할 페이지를 어떻게 선택합니까? 액세스 토큰이 있는지 확인할 수 있습니다. 그렇다면 "프로필"페이지를로드하고 싶습니다. 그렇지 않은 경우 (즉, 사용자가 로그인하지 않았거나 마지막 세션 후에 로그 아웃 한 경우) 로그인 페이지를 표시해야합니다.

사용자가 앱을 열 때 해당 페이지를 첫 번째 페이지로 표시하고 싶습니다.

답변

2

Application_Launching 구역에 If 문을 할 것입니다.

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

나는 당신의 토큰이 격리 된 저장소에 존재하고 그에 따라 하나 또는 다른 페이지로 이동하는 경우가 확인해야 App.xaml.cs

관련 문제