我们正在使用 .NET 核心网络应用程序使用 dropzone 和 EXIF 上传图片并从照片中查找 GPS 纬度和经度详细信息。
我们使用与 webview 相同的代码创建了一个 android 应用程序,这里的问题是,虽然相机设置允许共享位置,但 exif 不返回 GPS 详细信息。但如果照片已经拍摄并通过图库应用程序上传,则同样有效。
javascript 中的代码
new Dropzone("#dropzone", {
url: "#",
paramName: "file", //the parameter name containing the uploaded file
clickable: true,
uploadMultiple: true,
addRemoveLinks: true,
autoProcessQueue: true,
//acceptedFiles: ".png,.jpg,.jpeg,.PNG,.JPG",
acceptedFiles: "image/*",
capture: "camera",
dictDefaultMessage: "<strong>Drop files here or click to upload. </strong>", //override the default text
init: function () {
this.on('addedfile', function (file) {
if ($("#dropzone").hasClass('dropzone')) {
jQuery("#dropzone").attr('style', 'background-image: none !important;');
}
var isExist = existingImageName.filter(function (item) { return item === file.name });
if (isExist.length > 0) {
abp.notify.error("Image with this name is already exist,please select image with different name");
this.removeFile(file);
return;
}
else {
existingImageName.push(file.name);
imagefile.push(file);
var objFile = this;
console.log("exif calls");
dealLocationLat = "";
dealLocationLng = "";
EXIF.getData(file, function () {
if (Object.keys(this.exifdata).length > 0) {
if (AgeofImage(this.exifdata) || DealImageDateCheck(this.exifdata.DateTime)) {
var allMetaData = EXIF.getAllTags(this);
我在网络浏览器中尝试过,它运行良好,在移动浏览器 chrome 中,相机和图库应用程序运行良好。应用程序也可以与图库应用程序共享照片,但从应用程序拍摄相机照片不返回 GPS
我将“addedfile”事件更改为完成,然后它返回地理位置。谢谢