Windows 8.1 Metro 응용 프로그램에서 작업하고 있습니다. 이 앱은 자신의 라이브 계정으로 Windows에 로그인 한 사용자에게 개인화 된 경험을 제공합니다.OnlineIdConnectedStateChange가 트리거 된 후 사용자가 로그인했는지 여부를 확인하십시오.
Windows에서 제공되는 것처럼 모든 사용자는 PC 설정 -> 계정을 통해 자신의 라이브 계정을 PC에 연결/연결 해제 할 수 있습니다. 이 이벤트에서 즉, 사용자가 라이브 계정을 PC에 연결/연결 해제 할 때마다 알림이 전송됩니다. 이제 MSDN 페이지 (http://msdn.microsoft.com/en-us/library/windows/apps/hh977056.aspx)에 따라이 이벤트는 OnlineIdConnectedStateChange를 트리거합니다. 트리거에서 수신 대기하는 앱에서 백그라운드 작업을 구현할 수 있었지만 완벽하게 작동합니다. 연결된 라이브 계정에서 변경 될 때마다 이벤트 리스너가 시작됩니다. 그러나 사용자가 일부 실시간 계정으로 로그인했거나 이미 연결된 계정에서 로그 아웃 한 경우 사실을 확인할 수 없습니다.
(Metro App - How to detect if logged in with Live ID or Local Account)에서 설명한대로 Windows.Security.Authentication.OnlineId.OnlineIdAuthenticator
을 사용해 보았지만 사용자가 로그인하지 않은 경우 인증 절차가 시작됩니다. 원하는 것은 아닙니다. 누군가가 로그인했는지 여부를 알고 싶습니다. Auth 흐름을 트리거하고 싶지 않습니다.
OnlineIdConnectedStateChange 이벤트가 백그라운드 작업에서 실행될 때 사용자의 로그인/로그 아웃 상태를 확인하는 방법이 있습니까?
도움 주셔서 감사합니다.
제 질문은 사용자가 신규인지 아닌지를 결정하는 것이 아닙니다. "OnlineIDConnectedStateChange"이벤트를 트리거 한 조치가 로그인인지 또는 로그 아웃인지 여부를 판별하는 것입니다. –
이 방법을 계속 사용할 수 있습니다. ID가 null이고 이벤트가 시작되면 로그인 시도이고 그 반대의 경우도 마찬가지입니다. –
어디에서 이드를 얻을 수 있습니까? –