0

我正在創建一個Windows 8.1應用程序,我想將它用於多個帳戶。當我第一次啓動應用程序時,我使用wl.signin作用域來更快地測試應用程序,但我想現在用其他帳戶進行測試。所以我刪除了這個範圍,我從我的電腦上卸載了應用程序,並從我的真實帳戶中刪除了應用程序權限。使用Live SDK登錄Microsoft帳戶

但是,如果我想第一次登錄,應用程序想要自動登錄的權限(== 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的應用關聯在一起?

回答

2

LiveSdk無法實現。因爲LiveSdk使用來自系統的帳戶信息。一次使用少量帳戶的唯一方法是通過LIVE REST API開發自己的SDK(如在LiveSDK內部)。

相關問題