2016-07-15 9 views
-1

Ich verwende einige Funktionen, um die Browserinformationen beim Ausführen meiner App zu lesen.Internet Explorer in Adobe Flex blockieren

var appName:String = ExternalInterface.call("function getAppName(){ return navigator.appName; }"); 
var appVersion:String = ExternalInterface.call("function getAppVersion(){ return navigator.appVersion; }"); 
var userAgent:String = ExternalInterface.call("function getUserAgent() { return navigator.userAgent; }"); 

Und das ist das Ergebnis (Chrome):

navigator.appName: Netscape 
navigator.appVersion: 5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 
navigator.userAgent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 

Wie kann ich "Block" die App, so dass die Benutzer können nicht IE verwenden, wenn es läuft, nur FF ermöglicht, Chrome, Opera usw.?

Zum Beispiel, bringen Sie eine Warnmeldung, und die App im Hintergrund einfrieren, bis der Benutzer es erneut in einem anderen Browser ausführt.

Vielen Dank!

P. S .: Ich bin irgendwie neu zu Stackoverflow, so dass, wenn mein Beitrag nicht in der besten ist Form, lass es mich wissen!

+0

Nach den User-Agenten erhalten, müssen Sie nur noch zu prüfen, ob es IE ist ein tun, was Sie tun wollen ... – akmozo

+0

btw können Sie Ihren externen Schnittstelle Anruf gerade diese ExternalInterface.call ("navigator.userAgent reduzieren "); Es besteht keine Notwendigkeit, es in eine eigene Funktion zu verpacken. –

Antwort

1

Überprüfen Sie, ob der Benutzeragent die Zeichenfolge "msie" enthält. Wenn es die Warnung anzeigt.

if (userAgent.contains("msie")) { 
    Alert.show("nope"); 
} else { 
    //carry on 
}