Определить тип и версию браузера из Flash - PullRequest
7 голосов
/ 19 февраля 2010

Я хочу знать тип и версию браузера, из которого работает пользователь, в моем приложении Flex 4. Я знаю, что могу получить эту информацию, используя ExternalInterface для вызова Javascript. Я знаю, что могу получить эту информацию с сервера.

Я ищу способ получить эту информацию непосредственно из actionscript. Я имею в виду, не существует ли глобальной переменной или чего-то такого, что хранит эту информацию?

1 Ответ

9 голосов
/ 19 февраля 2010

Вы не можете, так как у вас нет глобальных переменных, как вы упоминаете.

Но почему бы не использовать ExternalInterface и JavaScript?.

var method:XML = <![CDATA[
     function( ){ 
         return { appName: navigator.appName, version:navigator.appVersion};}
    ]]>

var o:Object = ExternalInterface.call( method );
trace( "app name ",o.appName,"version ", o.version )

Если вы поместите его в класс в качестве статического метода, для вас это будет так же прозрачно, как и вызов внутреннего класса ...

package {
    import flash.external.ExternalInterface;


    public class BrowserUtils {

        private static const CHECK_VERSION:XML = <![CDATA[
             function( ) { 
                return { appName: navigator.appName, version:navigator.appVersion };
                }
            ]]>;

        public static function getVersion( ):Object {
            if ( !ExternalInterface.available ) return null;            

            return ExternalInterface.call( CHECK_VERSION );
        }

    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...