Cordova - 使用navigator.camera选择要上传的文件

时间:2015-02-10 06:38:19

标签: android cordova

我可以在cordova api中使用navigator.camera.getPicture()从设备中选择pdf吗?我的代码是

navigator.camera.getPicture(fileUploadSuccess,fileUploadFail,
            {sourceType:navigator.camera.PictureSourceType.PHOTOLIBRARY, 
            destinationType:navigator.camera.DestinationType.DATA_URL,
            quality:50,mediaType:navigator.camera.MediaType.ALLMEDIA});

代码打开设备库但我只能看到图像文件。我需要更改任何选项吗?如果我不能使用camera.getPicture()方法,还有其他选择吗?我正在使用cordova,因为这是一个混合应用程序。

3 个答案:

答案 0 :(得分:1)

不,您需要为此目的使用FileOpener插件......

我使用了此链接: - https://github.com/markeeftb/FileOpener

它还建议使用它。这对我有用..

答案 1 :(得分:1)

你无法使用getPicture()打开文件,你可以提交文件:

https://github.com/pwlin/cordova-plugin-file-opener2

你也可以参考:    here

答案 2 :(得分:0)

是的,可以。 至少在带有相机插件v4.0.3的Android上

我正在使用以下代码

navigator.camera.getPicture(onSuccess, onFail, {
    sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
    mediaType:navigator.camera.MediaType.ALLMEDIA,
    destinationType: Camera.DestinationType.FILE_URI
});

它让我选择任何文件:pdf,docx ...

即使您使用DATA_URL作为destinationType,它也会返回文件Uri。