簡體   English   中英

在air應用程序中加載嵌入式swf文件的問題

[英]problems with loading embedded swf files in air app

我有一個使用Flash CS 5.5創建的游戲文件。 我還有另一個swf文件,即嵌入在該游戲文件中的提示文件。 它在PC上工作正常。 當我嘗試使用嵌入式swf文件加載該游戲文件時遇到問題。 我收到以下錯誤:SecurityError:錯誤#3226:LoaderContext.allowCodeImport為false時無法導入SWF文件。 誰能告訴我為什么會這樣?

我想您正在使用Android設備上的Adobe Air移動版。 在air for mobile中,加載外部SWF文件存在額外的限制-尤其是當它們包含字節碼(ActionScript)時。 因為您的輔助SWF文件本身包含動作腳本代碼,所以如果沒有明確的安全限制,則無法加載到移動air應用程序中。

當實例化引用嵌入式SWF文件的類時,AS3隱式使用Loader ,並且使用默認選項進行加載-對於移動運行時環境,默認選項設置為空。

您可以通過自己創建LoaderLoaderContext實例來手動加載它們。

var ldr:Loader = new Loader();
var lc:LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain);
lc.allowCodeImport = true;
ldr.load(new URLRequest("YOUR_FILE_PATH"), lc);

還要注意,在iOS中,即使將allowCodeImport設置為true,也無法以任何方式加載外部SWF代碼。

有關更多詳細信息: http : //blogs.adobe.com/airodynamics/2012/11/09/packaging-and-loading-multiple-swfs-in-air-apps-on-ios/

嘗試這種上下文:

var loaderContext: LoaderContext = new LoaderContext();
loaderContext.allowLoadBytesCodeExecution = true; 
swfLoader.loaderContext = loaderContext;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM