2010-08-12 3 views
3

에서 버전을 읽을 수있는 방법 내 AIR 응용 프로그램에 대한 기본 응용 프로그램 설명자 파일이 있습니다. 그것은 정신에 대한 단축이 같은 외모 :응용 프로그램 설명자 파일

<?xml version="1.0" encoding="utf-8" standalone="no"?> 
<application xmlns="http://ns.adobe.com/air/application/2.0"> 
    <version>1.0.10</version> 
</application> 

지금 내가 버전을 표시하는 응용 프로그램에서 원하는,하지만 나는 여러 곳에서 버전을 유지하고 싶지 않기 때문에 나는 것을 읽을 수있는 방법 응용 프로그램 내의 버전 번호?

답변

5

확인 다음 코드 :

  var appXml:XML = NativeApplication.nativeApplication.applicationDescriptor; 
      var ns:Namespace = appXml.namespace(); 
      trace(appXml.ns::version); 
+0

잘 수행되었습니다. – invertedSpear

6

이 AIR의 최신 버전 (AIR 버전 3.x) 약간 변경되었습니다. appXml.ns :: version 대신 appXml.ns :: versionNumber를 사용합니다. 월

var appXml:XML = NativeApplication.nativeApplication.applicationDescriptor; 
var ns:Namespace = appXml.namespace(); 
var appVersion:String = appXml.ns::versionNumber[0].toString(); 
trace("appVersion", appVersion); 

업데이트 : appXml.ns ::의 versionNumber는 하나의 XML 객체로 구성 된 XMLList입니다, 그래서 당신은 실제 문자열 값을 얻으려면 그것을 파고의 비트가 필요

주 17, 2017 : 어느 시점에서 AIR의 applicationDescriptor를 다시 변경했습니다. 다음 코드는 AIR 23에서 작동합니다.

var appXml:XML = NativeApplication.nativeApplication.applicationDescriptor; 
var ns:String = appXml.namespace().toString(); 
var nsArray:Array = ns.split("/"); 
var appVersion:Number = nsArray[nsArray.length - 1]; 
trace("appVersion:", appVersion); // appVersion: 23.0 
+0

나는 이것을하는 방법을 이해하는 데 1 시간 이상이 걸릴 것으로 믿을 수 없다. 플래시는 장점이 있지만 OMG가 있습니다. Flash의 XML은 악몽입니다. – ericsoco

+0

어도비의 설명서에서 3 년 후 예를 들어 더 이상 사용되지 않는 버전을 사용한다고 생각할 수도 없습니다. –