2015-07-22 21 views
20

Hatten Sie Erfahrung mit der Erkennung von Facebook-In-App-Browsern? Was ist der Hauptunterschied in User Agent?Wie erkennt man den Facebook In-App Browser?

Ich will nicht wissen, ob es eine einzige mobile/ios/chrome ist. Ich muss wissen, ob User-Agent ist spezifisch von Facebook-App-Browser

Antwort

30

Sie arbeitet für FBAN/FBAV in den User-Agent überprüfen.

prüfen Sie diesen Link: Facebook user agent

Beispielcode als @sascha

function isFacebookApp() { 
    var ua = navigator.userAgent || navigator.vendor || window.opera; 
    return (ua.indexOf("FBAN") > -1) || (ua.indexOf("FBAV") > -1); 
} 
+0

Was bedeutet ua.OdexOf ("FBAN")> -1 und ua.OdexOf ("FBAV")> -1? Benutzer zur Verwendung des Webbrowsers anstelle des Browsers in Apps erzwingen? –

+0

@RobbNesp 'var us = navigator.userAgent' gibt Ihnen einen String-Wert. '.indexOf()' sucht nach der Position einer Unterzeichenfolge in einer Zeichenfolge. Wenn es nicht gefunden wird, wird ein Wert von -1 zurückgegeben. Es wird einfach überprüft, ob es sich um den Facebook-Browser handelt, indem überprüft wird, ob der User-Agent des Browsers eine der angegebenen Unterzeichenfolgen enthält. – worker11811

-8

dieser javascript gut

var standalone = window.navigator.standalone, 
    userAgent = window.navigator.userAgent.toLowerCase(), 
    safari = /safari/.test(userAgent), 
    ios = /iphone|ipod|ipad/.test(userAgent); 

if(ios) { 
    if (!standalone && safari) { 
     //browser 
    } else if (standalone && !safari) { 
     //standalone 
    } else if (!standalone && !safari) { 
     //uiwebview (Facebook in-app browser) 

    }; 
} else { 
    //not iOS 
}; 
+1

OP fragt: "müssen wissen, ob Benutzer-Agent von Facebook In-App-Browser spezifisch ist". – worker11811

20

vorgeschlagene Antwort vervollständigen worker11811 die den User-Agent über die Verwendung, hier ist ein Code-Snippet es funktioniert:

function isFacebookApp() { 
    var ua = navigator.userAgent || navigator.vendor || window.opera; 
    return (ua.indexOf("FBAN") > -1) || (ua.indexOf("FBAV") > -1); 
}