我正在構建一個新的通用Windows 10 UWP應用程序,並嘗試做Facebook登錄。Facebook登錄 - Windows 10 UWP - 桌面
在Facebook上,我已經把我的應用程序的Windows應用程序部分有我的應用程序的標識:
的Windows:S-1-15-XXXXXXXXXXXX
的Windows Phone:fef49b712e5a843cbfeb0c9d780423fc(不實際一個)
在包清單文件,我已經添加的協議:
MSFT-fef49b712e5a843cbfeb 0c9d780423fc
這意味着我我redirect_uri
參數設置爲:
MSFT-fef49b712e5a843cbfeb0c9d780423fc://授權
當手機上運行(與Windows 10移動預覽)服務工程很好,它打開了手機上的Facebook應用程序(使用fbconnect://授權?.....),然後進行身份驗證,然後打開我的應用程序備份 - 完美!
但是,當在桌面上嘗試相同時,它不起作用。在我的Launcher.LaunchUriAsync()
被設置爲具有標準Facebook網頁對話框的回退Uri(https://www.facebook.com/dialog/oauth?....。) - 這是因爲沒有支持登錄的Windows 10的Facebook應用程序。
通過發送相同的redirect_uri
到Facebook,它打開網頁瀏覽器(邊緣)並要求權限等,一旦授予權限,什麼都不會發生。看起來好像協議處理不起作用。
任何想法都會有用。
謝謝,但這一般工作。但是,我確實失去了應用程序通用性的靈活性。我希望能夠在手機和桌面上都能夠使用某些東西 - 用戶的最佳體驗就是在應用中進行身份驗證 - 這意味着我需要Launcher.LaunchUriAsync - 我認爲沒有辦法爲此使用WebAuthenticationBroker回退? –
'WebAuthenticationBroker'既適用於手機又適用於桌面,因此這將是一種選擇,因爲您不需要在手機上安裝Fb。最好的體驗如下:1)檢查Facebook應用程序是否已安裝(Win 10中現在有一個API),然後使用Fb登錄或Web認證代理。 – sibbl
好的,這很有趣 - 不知道你可以檢查是否安裝了應用程序 - 你知道那是什麼嗎?如果我能做到這一點,那麼你是正確的,'WebAuthenticationBroker'是 –