FBE 可讓用戶透過流動應用程式或流動瀏覽器完成驗證。
啟用 FBE 專用企業登入時,我們建議使用網址方式。
m
取代 www
。具體來說,使用 https://m.facebook.com/
而不是 https://www.facebook.com/
。 如果您傳遞 https://facebook.com
但沒有加上 www
或 m
,Facebook 會根據來源瀏覽器或平台自動載入正確的 m
或 www
網址。
請查看以下用戶介面範例,以了解在流動網站上載入 FBE 的具體情況。
我們強烈建議您在程式碼 (webview.getSettings().setUserAgentString("< user_agent>"))
中傳遞用於網頁檢視 WebSettings() 的 DEFAULT
UserAgent 字串。請勿透過 setUserAgentString()
方法更改它。如果用戶代理字串已修改,則可能會導致顯示問題。
下列範例顯示 Google Nexus 4 和 Samsung Galaxy S9 流動裝置的 UserAgent 預設值。我們會使用 getUserAgentString()
獲取 UserAgent 值:
Google Nexus 4 — Android 5.1 版 (API 22) 768x1280
Mozilla/5.0 (Linux; Android 5.1; Google Nexus 4 Build/LMY47D) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/39.0.0.0 Mobile Safari/537.36
Samsung Galaxy S9 — Android v8.0 (API 26) 1440x2960
Mozilla/5.0 (Linux; Android 8.0.0; Samsung Galaxy S9 Build/OPR6.170623.017; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/58.0.3029.125 Mobile Safari/537.36
在這兩種情況中,用戶介面都能按照預期正確顯示。請參閱下方的 Samsung Galaxy S9 螢幕截圖:
以下程式碼範例將 Webview 設為使用最少更新,這樣就可以正確顯示上述用戶介面:
WebView webView; webView = (WebView) v.findViewById(R.id.webview); webView.loadUrl('<FBE2.0 URL>'); WebSettings webSettings = webView.getSettings(); webSettings.setJavaScriptEnabled(true); // Sample log to see the Default UserAgent string - Log.i("UserAgent", ""+webSettings.getUserAgentString()); webView.setWebViewClient(new WebViewClient());
您亦可以傳遞以下設定,而不會導致任何顯示問題:
setLoadWithOverviewMode()
setUseWideViewPort()
setDomStorageEnabled()
setJavaScriptCanOpenWindowsAutomatically()
如果有企業需要傳遞自訂的 UserAgent,我們強烈建議您將其附加到 getUserAgentString()
傳回的預設 UserAgent 字串。為避免發生顯示問題,請勿修改 UserAgent 字串的現有部分。
您應避免傳遞其他顯示設定,因為這可能會導致顯示問題。例如,如果您在 Android Webview 中傳遞 setLayoutAlgorithm()
,系統會重新組織 HTML 並對顯示造成負面影響。
上述 Android 方法同樣適用於 iOS UIWebview/WKWebview。
以下是在 iOS 上獲取預設 UserAgent 的程式碼範例:
// Sample example - appending UserAgent - Please see latest iOS docs for approach to pass this param webView.customUserAgent = (UIWebView().stringByEvaluatingJavaScript(from: "navigator.userAgent") ?? "") + "/Custom agent"
如果使用 iOS,跟從上述適用於 Android 的最佳操作實例。重點是使用預設 UserAgent,並避免傳遞任何可能會影響 Webview 的顯示設定。