AIR 1.5 の変更点

遅ればせながら。AIR 1.5 からセキュリティ上の理由により HTMLLoader の仕様が変更されています。

HTMLLoader.loadString() を使って HTML コンテンツを読み込んだ場合 (Flex では HTML.htmlText に HTML コンテンツを設定した場合)、AIR 1.1 アプリケーションは、アプリケーションサンドボックス内にコンテンツを読み込みます。そのため、読み込まれたコンテンツからは自由にローカルリソースにアクセスすることができました。

AIR 1.5 から loadString() はコンテンツをブラウザサンドボックスに読み込むように変更されています。これによって、読み込まれた HTML コンテンツから外部リソースを参照する際、ローカルリソースへのアクセスが制限されるようになります。

以上の変更は、アプリケーション記述子の名前空間を 1.5 に変更した場合のみ有効です。名前空間が 1.1 の場合には、AIR 1.5 ランタイム上でも以前と同じ動作をします。

また、AIR 1.5 アプリケーションでも、HTMLLoader.placeLoadStringContentInApplicationSandbox = true と設定すると、AIR 1.1 アプリケーションと同じ振る舞いをするようになります。ただ、安全面からお勧めはいたしません。

1 Comment

Leave a comment