我正在使用Windows Phone,cordova / phonegap。 如何从画廊中选择视频,因为它是一张照片?
官方插件似乎只适用于图片。
以下是代码:
function getVideo() {
var options = { quality: 80 };
options["sourceType"] = 0 | 2;
options["mediaType"] = 1;
navigator.camera.getPicture(onVideoSuccess, onFail, options);
}
var onVideoSuccess = function (fileuri) {
console.log("fileuri " + fileuri);
}
var onFail = function (err) {
console.log("onFail");
}
这样我只能选择图片,我可以更改任何参数来选择视频文件吗?
由于
答案 0 :(得分:2)
这适用于Cordova 5.4.1
navigator.camera.getPicture(onSuccess, onFail, { quality: 100,
destinationType: Camera.DestinationType.FILE_URI,
sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
mediaType: Camera.MediaType.VIDEO
});
相关文档:https://www.npmjs.com/package/cordova-plugin-camera#module_Camera.DestinationType
更新 - 我接回来了,它适用于在用户界面中选择视频,但是我无法让FILE_URI
处理程序中的onSuccess
得到任何空的内容字符串,所以在他们选择视频后我什么也做不了。
答案 1 :(得分:1)
找到它需要一些时间,但确实可以通过设置MediaType。
var pictureSource;
var destinationType;
var mediaType;
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
pictureSource = navigator.camera.PictureSourceType;
destinationType = navigator.camera.DestinationType;
mediaType = navigator.camera.MediaType;
}
navigator.camera.getPicture(onPhotoURISuccess, onFail, {
destinationType: destinationType.FILE_URI,
mediaType: mediaType.VIDEO,
sourceType: source
});
function onPhotoURISuccess(imageURI) {
console.log(imageURI);
}
function onFail(message) {
console.log(message);
}
在这个答案中找到它:Pick an image / video using PhoneGap in Android 更多信息:http://docs.phonegap.com/en/1.4.0/phonegap_camera_camera.md.html#Camera
供参考:
Camera.MediaType = {
PICTURE: 0, // allow selection of still pictures only. DEFAULT. Will return format specified via DestinationType
VIDEO: 1, // allow selection of video only, WILL ALWAYS RETURN FILE_URI
ALLMEDIA : 2 // allow selection from all media types
因此,在您的代码中,您应该更改
options["sourceType"] = 0 | 2;
为:
options["sourceType"] = 1;
仅选择视频,或者选择:
options["sourceType"] = 0;
仅选择照片,或者选择:
options["sourceType"] = 2;
选择两者。