มือถือ

คุณมีตัวเลือกในการเปิดใช้ FBE บนมือถือดังต่อไปนี้

m-Browser

FBE สามารถยืนยันตัวตนผ่านแอพมือถือหรือเบราว์เซอร์บนมือถือได้

เราแนะนำให้ใช้ URL เมื่อเปิดใช้การเข้าสู่ระบบธุรกิจสำหรับ FBE

  1. เปลี่ยน www ใน URL ของ Facebook เป็น m หรืออธิบายโดยละเอียดคือ ให้ใช้ https://m.facebook.com/ แทน https://www.facebook.com/

หากคุณส่งผ่าน https://facebook.com โดยไม่มี www หรือ m Facebook จะโหลด URL ที่มี m หรือ www อย่างถูกต้องตามเบราว์เซอร์หรือแพลตฟอร์มต้นทางโดยอัตโนมัติ

ตัวอย่างอินเทอร์เฟซผู้ใช้

ตัวอย่าง UI ต่อไปนี้แสดงหน้าตาของ FBE เมื่อโหลดบนเว็บไซต์บนมือถือ

WebViews (Android) หรือ WK/UIWebviews (iOS)

Android

เราขอแนะนำอย่างยิ่งให้คุณส่งสตริง UserAgent DEFAULT สำหรับตัวแสดงหน้าเว็บ WebSettings() ในโค้ด (webview.getSettings().setUserAgentString("< user_agent>")) แต่อย่าเปลี่ยนด้วยเมธอด setUserAgentString() หากมีการแก้ไขสตริงตัวแทนผู้ใช้ อาจทำให้เกิดปัญหาในการเรนเดอร์

ตัวอย่างต่อไปนี้แสดงค่า UserAgent เริ่มต้นสำหรับอุปกรณ์มือถือ Google Nexus 4 และ Samsung Galaxy S9 ให้เรียกรับค่า UserAgent โดยใช้ getUserAgentString():

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 เวอร์ชั่น 8.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

ในทั้งสองกรณี UI ได้รับการเรนเดอร์ตามที่คาดไว้ ดูภาพหน้าจอต่อไปนี้สำหรับ Samsung Galaxy S9



ต่อไปนี้เป็นตัวอย่างโค้ดที่ตั้งค่าตัวแสดงหน้าเว็บโดยมีการอัพเดตเล็กน้อย ซึ่งจะเรนเดอร์ UI ข้างต้นได้อย่างถูกต้อง

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()
  • ตัวเลือกการตั้งค่าการเปลี่ยนแปลงอื่นๆ ที่ไม่ใช่ UI

หากมีธุรกิจที่จำเป็นต้องส่งผ่าน UserAgent ที่กำหนดเอง เราขอแนะนำอย่างยิ่งให้คุณพ่วง UserAgent ดังกล่าวกับสตริง UserAgent เริ่มต้นที่ส่งคืนโดย getUserAgentString() ทั้งนี้ อย่าแก้ไขส่วนของสตริง UserAgent ที่มีอยู่แล้วเพื่อหลีกเลี่ยงปัญหาในการเรนเดอร์

คุณควรหลีกเลี่ยงการส่งผ่านการตั้งค่าการเรนเดอร์เพิ่มเติม เนื่องจากอาจทำให้เกิดปัญหาในการเรนเดอร์ได้ ตัวอย่างเช่น หากคุณส่งผ่าน setLayoutAlgorithm() ในตัวแสดงหน้าเว็บของ Android ระบบจะจัดระเบียบ HTML ใหม่และส่งผลกระทบต่อการเรนเดอร์

iOS

คุณสามารถใช้แนวทางสำหรับ Android ที่อธิบายข้างต้นกับ iOS UIWebview/WKWebview ได้เช่นกัน

ต่อไปนี้คือตัวอย่างโค้ดสำหรับการเรียกรับ UserAgent เริ่มต้นบน 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"

ในกรณีของ iOS โปรดปฏิบัติตามหลักปฏิบัติที่ดีที่สุดเดียวกันกับที่กล่าวถึงข้างต้นสำหรับ Android กุญแจสำคัญคือการใช้ UserAgent เริ่มต้นและให้หลีกเลี่ยงการส่งผ่านการตั้งค่าการเรนเดอร์ที่ส่งผลต่อตัวแสดงหน้าเว็บ