当我尝试在StageWebViewBridge容器上加载本地html时,我得到了这个错误:
代码:错误#2044:Unhandled errorprevention:。文本=加载错误。
private function onDiskCacheEnd( e:StageWebviewDiskEvent ):void{
bridge = new StageWebViewBridge( 0, 0, 1280, 720 );
bridge.loadLocalURL('applink://index.html');
...
index.html位于WWW文件夹。
谢谢!
从未真正尝试过,但文档(https://code.google.com/p/stagewebviewbridge/wiki/ContentLoading)只使用了一个斜杠。
所以不用:"applink://index . html"
文档使用:"applink:/index . html"
这里StageWebView不能引用你在loadURL()中给出的URL,因为applink在文档中通过单个斜杠获得引用。但是我不能用applink试试。StageWebViewBridge不会在他们的override protected addEventListener函数中处理ErrorEvent。如果你需要处理这个错误事件,你应该添加
override public function addEventListener( type : String, listener : Function, useCapture : Boolean = false, priority : int = 0, useWeakReference : Boolean = false ) : void
{
switch( type )
{
case ErrorEvent.ERROR:
case Event.COMPLETE:
case LocationChangeEvent.LOCATION_CHANGING:
case LocationChangeEvent.LOCATION_CHANGE:
case FocusEvent.FOCUS_IN:
case FocusEvent.FOCUS_OUT:
_view.addEventListener( type, listener, useCapture, priority, useWeakReference );
break;
default:
super.addEventListener( type, listener, useCapture, priority, useWeakReference );
break;
}
}
,还需要删除侦听器,如
override public function removeEventListener( type : String, listener : Function, useCapture : Boolean = false ) : void
{
switch( type )
{
case ErrorEvent.ERROR:
case Event.COMPLETE:
case LocationChangeEvent.LOCATION_CHANGING:
case LocationChangeEvent.LOCATION_CHANGE:
case FocusEvent.FOCUS_IN:
case FocusEvent.FOCUS_OUT:
_view.removeEventListener( type, listener, useCapture );
break;
default:
super.removeEventListener( type, listener, useCapture );
break;
}
}
现在你可以通过
处理errorvent了 webView.addEventListener( ErrorEvent.ERROR, onLoadURLErrorTriggered );
,你总是最好给文件url来加载本地HTML文件,如
var file : File = new File("file-path");
webView.loadURL( file.url );