Tienes las opciones siguientes para iniciar FBE en móviles:
FBE permite autenticarse mediante aplicaciones para móviles o navegadores del móvil.
Te recomendamos utilizar el enfoque de la URL al iniciar el inicio de sesión empresarial de FBE.
www
por m
en la URL de Facebook. En concreto, utiliza https://m.facebook.com/
en lugar de https://www.facebook.com/
. Si pasas la URL https://facebook.com
sin incluir www
ni m
, Facebook cargará automáticamente la URL m
o www
correcta en función del navegador o la plataforma de origen.
Los siguientes ejemplos de interfaz de usuario muestran el aspecto que tiene FBE cuando se carga en el sitio para móviles.
Te recomendamos encarecidamente que pases la cadena UserAgent DEFAULT
para el método WebSettings() de las vistas web en el código (webview.getSettings().setUserAgentString("< user_agent>"))
. No la cambies mediante el método setUserAgentString()
. Si se modifica la cadena del agente de usuario, es posible que se produzcan problemas de representación.
Los siguientes ejemplos muestran los valores de UserAgent predeterminados para los dispositivos móviles Google Nexus 4 y Samsung Galaxy S9. Obtén el valor UserAgent mediante getUserAgentString()
:
Google Nexus 4: Android versión 5.1 (API 22) 768 x 1280
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 versión 8.0 (API 26) 1440 x 2960
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
En ambos casos, la IU se representó según lo previsto. Consulta las capturas de pantalla siguientes del dispositivo Samsung Galaxy S9:
A continuación, se muestra un ejemplo de código que establece una vista web con las actualizaciones mínimas y que representa correctamente la IU anterior:
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());
También puedes pasar la configuración siguiente sin que se produzcan problemas de representación:
setLoadWithOverviewMode()
setUseWideViewPort()
setDomStorageEnabled()
setJavaScriptCanOpenWindowsAutomatically()
Si una empresa necesita pasar un valor UserAgent personalizado, recomendamos encarecidamente anexarlo a la cadena UserAgent predeterminada que devuelve el método getUserAgentString()
. Para evitar problemas de representación, no modifiques la parte existente de la cadena UserAgent.
Debes evitar pasar opciones de configuración de representación adicionales, ya que pueden producir problemas de representación. Por ejemplo, si pasas setLayoutAlgorithm()
en la vista web de Android, se reorganiza el código HTML y la representación se ve afectada negativamente.
El enfoque para Android descrito anteriormente también funciona para UIWebview/WKWebviews en iOS.
A continuación, se muestra un ejemplo de código para obtener el valor UserAgent predeterminado en iOS:
// Sample example - appending UserAgent - Please see latest iOS docs for approach to pass this param webView.customUserAgent = (UIWebView().stringByEvaluatingJavaScript(from: "navigator.userAgent") ?? "") + "/Custom agent"
Para iOS, sigue las mismas prácticas recomendadas que se indicaron anteriormente para Android. La clave está en usar el valor UserAgent predeterminado y evitar pasar cualquier configuración de representación que pueda afectar a las vistas web.