gpt4 book ai didi

ios - ApplicationDomain.getDefinition 在适用于 iOS 的 Release Build 中不起作用

转载 作者:行者123 更新时间:2023-11-28 22:31:04 25 4
gpt4 key购买 nike

我正在加载一个外部 SWF 文件并在我的 Flex4.6 中使用 ApplicationDomain.getdefination("Slide1") 使用 AIR 3.2 for iOS 来获取其中的嵌入内容。

当我在 Debug模式(快速)下编译时它工作正常,但在 Release模式(标准)下编译时在 iPad 上出现引用错误 1065(参见下面的错误行*)。

感谢任何帮助/建议。

我的 actionscript 类中的示例代码如下所示:-

var request:URLRequest;
request = new URLRequest(strSwfPath);
var rslLoader:Loader = new Loader();
var appDom:ApplicationDomain = new ApplicationDomain( ApplicationDomain.currentDomain );
var loaderContext:LoaderContext = new LoaderContext(false,appDom);
loaderContext.allowLoadBytesCodeExecution = true;
rslLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadSwfCompleteHandler, false, 0, true);
rslLoader.load(request, loaderContext);

//--
private var loadedAppDomain:ApplicationDomain;
public var embedClass:Class;
//--

private function loadSwfCompleteHandler(event:Event):void
{
loadedAppDomain = rslLoader.contentLoaderInfo.applicationDomain;
embedClass = loadedAppDomain.getDefinition(slideName) as Class; // >>>>>>>>>>>>>>>>>>>>>>> *Error Line.
}

//--------------------- The code inside my external SWF looks like:-
package

{
import flash.display.Sprite;
import flashx.textLayout.compose.ISWFContext;
public class Slide1 extends Sprite implements ISWFContext {

[Embed("slide1/sldBg1.png", mimeType="image/png")]
public static const bg:Class;
public function callInContext(fn:Function, thisArg:Object, argsArray:Array, returns:Boolean=true):*{
if (returns)
return fn.apply(thisArg, argsArray);
fn.apply(thisArg, argsArray);
}
}
}

最佳答案

有关运行时代码的 iOS 应用商店协议(protocol)存在问题;所以这是行不通的。

Adobe 有一个 sort of work-around这使得这项工作。它是在 AIR 3.6 中引入的;所以你将不得不升级你的AIR SDK。

关于ios - ApplicationDomain.getDefinition 在适用于 iOS 的 Release Build 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17449653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com