热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用Cordova3.7(文件://)从iOS8上的www文件夹加载资源

如何解决《使用Cordova3.7(文件://)从iOS8上的www文件夹加载资源》经验,为你挑选了1个好方法。

我有一个混合应用程序,使用Cordova 3.7和jQuery Mobile 1.3.2在iOS 7上完美运行

我在iOS 8上测试它并且它已经坏了.我正在使用绝对路径请求我的应用程序的每个页面(视图),使用file://协议,如:

file:///var/mobile/Applications//MyApp.app/www/views/add-project.html

但我得到错误:

Failed to load resource: The requested URL was not found on this server.

我读到了这个bug,是问题吗?

此外,在iOS 8上,www文件夹的位置与iOS 7略有不同,它解析为:

file:///var/mobile/Containers/Data/Application//MYApp.app/www/views/add-project.html

它是否正确?

我尝试使用toURL()和toInternalURL()方法来获得绝对路径:

cdvfile://localhost/root/var/mobile/Containers/Bundle/Application//MyApp.app/但我总是得到同样的错误.有什么建议吗?

谢谢



1> Mirko..:

对于那些可能发现这个有用的人,我终于设法解决了这个问题.

wwwios 8+上文件夹的完整路径是:

file:///private/var/mobile/Containers/Bundle/Application//.app/www/

但是当您使用Cordova请求应用程序目录时,执行以下操作:

window.resolveLocalFileSystemURL(cordova.file.applicationDirectory, onSuccess, onError);

它会给你一个错误的路径(iOS 8.1.2上的Cordova 3.7),如:

file:////var/mobile/Containers/Bundle/Application//.app/

使用docs上建议的toURL()方法

因此,您需要手动进行一些调整

var path = fileSystem.toURL();//given by the success callback 

IOS_ASSETS_ABS_PATH = path.replace("file:////", "file:///private/");

IOS_ASSETS_ABS_PATH += "www/";

和宾果游戏!


推荐阅读
author-avatar
手机用户2502925313
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有