问题标签 [android-exifinterface]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android-10.0 - 如何在android Q中编辑exif
我想创建一个 jpg 并编辑它的 exif。
之前,我使用 ExifInterface:
但在 Android Q 中,我只是从 MediaStore API 获得了一个图像 uri,而不是文件路径。我尝试使用它:
但是当我打电话时saveAttributes()
,它显示如下
那么,有没有另一种方法来处理这个问题
android - 将图像添加到 MediaStore 后写入 EXIF 数据
我只需要将一些 Exif 元数据添加到保存到 MediaStore 的 Jpeg 中(使用 Content Resolver)
这里我如何保存图像:
在这里,我尝试添加 Exif 元数据:
无论如何,我尝试这样做(检查注释行)我收到一些错误(错误的文件描述符或访问被拒绝)
使用来自“MediaStore.Images.Media.DATA”的路径只是一个测试,不得在解决方案中使用(我的目标是 API 29,它已被弃用)。但无论如何,它也不起作用。
有谁知道我怎样才能摆脱这个?
谢谢
PS 图像已正确保存,只是 writeExif() 部分失败。
android - 使用 ExifInterface 后 BitmapFactory.decodeByteArray() 工作不正确
我尝试通过从我的Android
应用程序中的图库或相机获取图片来添加简单的功能。一切正常,我成功获得uri
了图片,然后想向用户展示这张图片。这段代码运行良好:
然后,如果需要,我想旋转图像(例如,在相机之后所有图像都旋转 90 度)。为此,我使用ExifInterface
(来自androidx.exifinterface:exifinterface:1.3.1
)。但是有一些奇怪的东西。在这段代码中:
bitmapOriginal
总是null
。_ 如您所见,我exifInterface
之前创建了对象inputStream.readBytes()
。如果我交换它们,并尝试运行以下代码:
然后bitmapOriginal
不会null
,但rotation
价值将永远ORIENTATION_UNDEFINED
。
那么,我做错了什么?如何从uri
具有正确方向的位图获取正确的字节和图像方向并在之后创建?
android - 尝试保存属性时,Androidx Exifinterface 崩溃。写入失败:EBADF(错误的文件描述符)
尝试使用saveAttributes()
from androidxExifinterface
保存任何 JPEG 图片时,我的程序崩溃并出现错误“写入失败:EBADF(错误文件描述符)”
我可以从新项目重新开始复制错误。我正在使用 Android Studio: new project
-> Empty Activity
。我正在使用模拟器进行测试。
以下是我对新的 Empty Activity 模板所做的唯一更改的完整代码。
使用androidxExifinterface
,此代码能够正确获取 Exif 属性。但是,saveAttributes()
每次都崩溃:
saveAttributes()
无论我是否先崩溃,都会崩溃setAttribute()
。- 使用哪张图片无关紧要。我尝试过的每张照片都会崩溃。
- 我正在使用JPEG图片。我没有测试过其他 mime 类型。
saveAttributes()
抛出:“无法保存新文件。原始文件存储在...”
我想设置图片的Exif属性并保存到原始图像文件中。正确的方法是什么?
[这篇文章应该被标记androidx-interface
。但是那个标签不存在,而且我没有添加标签的声誉。所以我使用了 tag android-interface
,它确实存在]。
build.gradle (:app)
AndroidManifest.xml:
MainActivity.kt:
堆栈跟踪:
android - Android Camera Exif 没有方向数据但图像已旋转
我正在使用以下帮助程序类来处理相机图像的采样和旋转。
调用助手类
我得到的问题是随机的。大多数情况下,如果我得到以下语句的旋转图像
返回 ExifInterface.ORIENTATION_ROTATE_90 这很好,代码可以正确旋转该图像。但有时图像被旋转,但 Exif getAttributeInt 返回 ExifInterface.ORIENTATION_NORMAL。我相信这意味着没有针对此图像的 Exif/Orientation 数据,它返回默认值。
退出获取属性方法
android - Exifinterface saveAttributes() 由于“无法将原始文件复制到临时文件”而失败
所以现在我正在编写自定义相机,并且我想将位置写入我捕获的图像中,由于某种原因我不能在这里使用 builder.set() 。该文件是这样创建的:
为了使问题简单,我只是简单地创建一个具有正确文件路径的 ExifInterface,并调用 saveAttributes() 方法,它看起来像这样:
但后来我得到了这个日志,
我认为问题发生在这里:Caused by: java.io.IOException: Couldn't rename to /storage/emulated/0/DCIM/Camera/1619507958498.jpg.tmp
顺便说一句,getAttributes() 工作正常,只有 saveAttributes() 有问题
请帮我检查如何解决这个问题。非常感谢
android - Android:在 Kotlin 中使用 ExifInterface 获取图像的地址
是否可以使用 ExifInterface 获取图像地址?在 Android 上,查看 exif 信息图像时会填充地址。
react-native - 如何将exif数据添加到android上的照片
我使用 react-native-camera 拍照。在选项中,我添加了坐标(可行)和“ImageDescription”。但是记录响应时不会出现“ImageDescription”。然后我使用 react-native-exif 来读取文件的 exif 数据。(我认为问题是由于 api 级别设置不正确,因为我得到的属性低于 api 级别 9)我的代码:
日志:
额外的信息:
安卓/build.gradle:
- buildToolsVersion = "29.0.2"
- minSdkVersion = 25
- compileSdkVersion = 29
- targetSdkVersion = 29
包.json:
- “反应”:“16.13.1”,
- “反应原生”:“^0.63.4”,
- "react-native-camera": "git+https://git@github.com/react-native-community/react-native-camera.git",
- "react-native-exif": "^0.4.0",
android - 使用 Android CameraX 拍摄的所有图像在其 EXIF 数据中的方向不正确
我正在使用CameraX https://developer.android.com/training/camerax拍摄一些图像。但是,我所有的图像都出现了错误的旋转。它们都被标记:ORIENTATION_ROTATE_90
是的,我已检查以确保方向锁定未打开,并且清单中没有任何内容可以锁定屏幕方向,我也没有覆盖任何方向方法。
无论我如何通过模拟器或真实设备对其进行测试,方向似乎都被“锁定”了。唯一正确旋转的图片是设备处于纵向模式时。但是,它仍然被标记为ORIENTATION_ROTATE_90
谁能看到我可能做错了什么?
android - Uri 到位图的转换旋转图像
我有一个具有图像上传功能的应用程序,在上传图像后,onActivityResult()
我收到图像的 Uri 并将其转换为具有以下功能的位图:
但由于某种原因,如果它是肖像图像,我的图像会旋转 90 度
我已经尝试使用这个ExifInterface
东西来修复它并使用这个功能将它旋转回来:
但我收到此错误:
这就是我为图像创建文件路径的方式:
这是我为图像提供的文件路径的示例:
我假设路径中有一些与点相关的东西avedot.app
破坏了 ExifInterface 函数,但我该如何解决这个问题?
提前致谢 !