アプリケーション設定の読み取り

実行時に、アプリケーション記述ファイルのプロパティとアプリケーションの発行者 ID を取得できます。これらの値は、NativeApplication オブジェクトの applicationDescriptor プロパティと publisherID プロパティで設定されます。

アプリケーション記述ファイルの読み取り

NativeApplication オブジェクトの applicationDescriptor プロパティを取得することで、現在実行しているアプリケーションのアプリケーション記述ファイルを XML オブジェクトとして読み取ることができます。

ActionScript 3.0 の例:

var appXml:XML = NativeApplication.nativeApplication.applicationDescriptor;

JavaScript の例:

var appXml:XML = air.ativeApplication.nativeApplication.applicationDescriptor;

ActionScript 3.0 では、アプリケーション記述子のデータに XML(E4X)オブジェクトとしてアクセスできるようになります。以下に例を示します。

var appXml:XML = NativeApplication.nativeApplication.applicationDescriptor; 
var ns:Namespace = appXml.namespace(); 
var appId = appXml.ns::id[0]; 
var appVersion = appXml.ns::version[0]; 
var appName = appXml.ns::filename[0]; 
air.trace("appId:", appId); 
air.trace("version:", appVersion); 
air.trace("filename:", appName); 
var xmlString = air.NativeApplication.nativeApplication.applicationDescriptor;

JavaScript では、DOMParser オブジェクトを使用してデータを解析することができます。以下に例を示します。

var xmlString = air.NativeApplication.nativeApplication.applicationDescriptor; 
var appXml = new DOMParser(); 
var xmlobject = appXml.parseFromString(xmlString, "text/xml"); 
var root = xmlobject.getElementsByTagName('application')[0]; 
var appId = root.getElementsByTagName("id")[0].firstChild.data; 
var appVersion = root.getElementsByTagName("version")[0].firstChild.data; 
var appName = root.getElementsByTagName("filename")[0].firstChild.data; 
air.trace("appId:", appId); 
air.trace("version:", appVersion); 
air.trace("filename:", appName);

詳しくは、アプリケーション記述ファイルの構造を参照してください。

アプリケーション ID と発行者 ID の取得

AIR アプリケーションは、アプリケーション ID と発行者 ID の組み合わせによって一意に識別されます。アプリケーション ID は、アプリケーション記述子の <id> エレメントで指定します。発行者 ID は、AIR インストールパッケージの署名に使用された証明書から取得されます。

次のコードに示すように、アプリケーション ID は、NativeApplication オブジェクトの id プロパティから読み取ることができます。

ActionScript 3.0 の例:

trace(NativeApplication.nativeApplication.applicationID); 

JavaScript の例:

air.trace(air.NativeApplication.nativeApplication.applicationID);

発行者 ID は、NativeApplication オブジェクトの publisherID プロパティから読み取ることができます。

ActionScript 3.0 の例:

trace(NativeApplication.nativeApplication.publisherID); 

ActionScript 3.0 の例:

air.trace(air.NativeApplication.nativeApplication.publisherID);
注意: ADL で AIR アプリケーションを実行する場合、ADL コマンドラインで -pubID フラグを使用して一時的な発行者 ID を割り当てていない限り、AIR アプリケーションには発行者 ID がありません。

インストールされているアプリケーションの発行者 ID は、アプリケーションのインストールディレクトリ内にある META-INF/AIR/publisherid ファイルから見つけることもできます。

詳しくは、AIR 発行者 ID についてを参照してください。