Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android中的webStageView本地HTML路径_Android_Actionscript_Air - Fatal编程技术网

Android中的webStageView本地HTML路径

Android中的webStageView本地HTML路径,android,actionscript,air,Android,Actionscript,Air,我正在尝试在WebTageView实例中加载本地HTML(存在于项目的文件夹结构中)。虽然这在windows和ipad/iphone中运行良好,但在Android中找不到文件(仅在2.2中尝试过) File.applicationDirectory.url返回“应用程序:” File.applicationStorageDirectory.url返回“应用程序存储:” File.applicationDirectory.nativePath返回Adobe文档中指定的空字符串 问题是webview

我正在尝试在WebTageView实例中加载本地HTML(存在于项目的文件夹结构中)。虽然这在windows和ipad/iphone中运行良好,但在Android中找不到文件(仅在2.2中尝试过)

File.applicationDirectory.url返回“应用程序:” File.applicationStorageDirectory.url返回“应用程序存储:”

File.applicationDirectory.nativePath返回Adobe文档中指定的空字符串

问题是webview出现“网页不可用,应用程序:/test/index.html未找到”错误。有没有办法获取完整路径,或者“强制”浏览器理解app:引用的特定文件夹

谢谢

作为:

不支持app:和app storage:方案

在iOS上,你的代码工作得很好,但在Android上,你必须通过一些像你这样的黑客实现来实现,因为安全问题与StateWebView从这些目录加载URL有关。另一种解决方案是将app:或app storage:文件复制到临时文件中,然后将临时文件url加载到StageWebView:

var htmlFile:File = File.applicationDirectory.resolvePath(url);
var workingFile:File = File.createTempFile();
htmlFile.copyTo(workingFile, true);
stageWebView.loadURL(workingFile.url);

编辑:另一种解决方案是将html内容编码到.as文件中,并使用StageWebView.loadString()方法。请记住,您必须为Android设备编码该字符串。

我会在几天内解决这个问题。file:URL方案引用客户端计算机上的文件。文件中没有主机名:scheme;您只需提供文件的路径。因此,本地计算机上的文件应该是file://~User/2ndFile.html。注意三条斜线;URL的主机名部分为空,因此路径开头的斜杠紧跟在URL开头的双斜杠之后。您还需要扩展用户的路径;~不在文件中展开:URL。所以你需要file:///home/User/2ndFile.html (在大多数Unix上),file:///Users/User/2ndFile.html (在Mac OS X上),或file:///C:/Users/User/2ndFile.html (在窗口上)。 此解决方案在我的应用程序中非常有效

我暂时用documentsDirectory“修复”了这个问题,它指向SD卡。相当不错,但工作正常(当然是暂时的)