Android上的文件管理器错误的Phonegap相机getPhoto

时间:2014-04-16 01:57:24

标签: android cordova camera image-file

我尝试从手机加载图像文件。通过使用示例代码(Camera.sourceType = Camera.PictureSourceType.PHOTOLIBRARY),当按下按钮时,弹出窗口显示我可以选择打开"照片库"或"文件管理器" (某些类似的名称,可能因手机型号和语言而异)。如果我通过照片库选择它(如代码所示?),我可以获得返回的图像文件,但如果我使用"文件管理器"则会失败。错误是说"无法加载本地资源 - file://...."。 (相比之下,照片库中返回的值是content://协议)。

由于用户可能会随机使用其中一个应用程序(并且某些图像不在照片库范围内),我怎样才能通过这两种方式正确使用它?

=======更新======

只是意识到报告错误是因为我使用图像的返回文件句柄作为图像源。我的phonegap应用程序使用远程链接作为index.html,因此不允许加载本地资源(跨域问题)。 所以我需要先在后台上传它,然后将图像源设置为返回的URL而不是......

1 个答案:

答案 0 :(得分:0)

正如我更新的那样,我在大多数PhoneGap文档和教程中使用远程页面(例如http://domain.com/index.html)而不是资产中的页面(例如index.html)。因此file://协议将满足跨域限制,并且无法通过远程页面加载。虽然content://协议没有这样的限制。我必须重新组织我的解决方案的架构。