Войдите в систему с учетной записью Microsoft, используя Live SDK

Я создаю приложение для Windows 8.1 и хочу использовать его с несколькими учетными записями. Когда я впервые запустил приложение, я использовал область wl.signin, чтобы быстрее протестировать приложение, но сейчас я хочу протестировать его с другими учетными записями. Поэтому я удалил эту область, я удалил приложение со своего компьютера и из моей учетной записи Live я удалил разрешения приложений.

Тем не менее, если я хочу войти в систему в первый раз, приложению требуется разрешение на автоматический вход в систему (== wl.signin, которое я уже удалил из своих областей, как я упоминал ранее).

По сути, я хочу добиться, чтобы мои учетные данные пользователя записывались каждый раз, когда я хочу использовать приложение, чтобы я мог войти в систему с другими учетными записями.

Вот код для входа:

LiveLoginResult result = await App.Auth.InitializeAsync(new string[] { "wl.basic" });
if (result.Status != LiveConnectSessionStatus.Connected)
    result = await App.Auth.LoginAsync(new string[] { "wl.basic" });

if (result.Status == LiveConnectSessionStatus.Connected)
{
    await App.MobileService.LoginWithMicrosoftAccountAsync(
        result.Session.AuthenticationToken);
    App.Lcs = result.Session;                    
}
else
{
    await dialogService.ShowMessage("Not logged in.", "Error!");
}

И если я пытаюсь выйти из системы, CanLogout всегда возвращается со значением false.

if (App.Auth.CanLogout)
{
    App.Auth.Logout();
    navigationService.NavigateTo("MainPage");
}

Что мне здесь не хватает? Может быть, области кэширования где-то еще? Может ли это быть проблемой, если я использую операционную систему с учетной записью Microsoft? Или если я связал приложение с приложением Магазина в Visual Studio?


person fzl    schedule 01.11.2014    source источник


Ответы (1)


Это невозможно с LiveSdk. Потому что LiveSdk использует информацию об учетной записи из системы. Единственный способ использовать несколько учетных записей одновременно — разработать собственный SDK через LIVE REST API (как в LiveSDK внутри).

person crea7or    schedule 02.11.2014