为什么我的 image/video 元数据被删除了?如何在我的文件中保存自定义信息?
Why my image/video metadata is being deleted? How can i save custom information in my files?
我正在使用 MediaStore class 进行一些实验,使用自定义数据保存我的图像和视频以供日后阅读。它工作正常,我找到了为我的媒体项目设置参数的方法,并且我能够在我的 phone 中读取它们。
例如,我正在以快动作录制视频并保存信息以使我的应用 "know" 这是一个快动作视频来制作一些自定义 UI 东西,我添加了我的 MediaStore.Images.ImageColumns.DESCRIPTION
字段中的文字。
它工作正常,但如果我将我的文件复制到我的计算机或其他 phone 并且我尝试再次读取元数据,至少一切都是空的:
MediaStore.Images.ImageColumns.TITLE
MediaStore.Images.ImageColumns.ORIENTATION
MediaStore.Images.ImageColumns.MIME_TYPE
如何避免这种情况?您是否有其他想法在我的文件中保存自定义信息以便稍后使用其他应用程序阅读?
现在我正在保存这些数据:
static final String[] QUERY_PROJECTION = {
MediaStore.Images.ImageColumns._ID, // 0, int
MediaStore.Images.ImageColumns.TITLE, // 1, string
MediaStore.Images.ImageColumns.MIME_TYPE, // 2, string
MediaStore.Images.ImageColumns.DATE_TAKEN, // 3, int
MediaStore.Images.ImageColumns.DATE_MODIFIED, // 4, int
MediaStore.Images.ImageColumns.DATA, // 5, string
MediaStore.Images.ImageColumns.ORIENTATION, // 6, int, 0, 90, 180, 270
MediaStore.Images.ImageColumns.WIDTH, // 7, int
MediaStore.Images.ImageColumns.HEIGHT, // 8, int
MediaStore.Images.ImageColumns.SIZE, // 9, long
MediaStore.Images.ImageColumns.LATITUDE, // 10, double
MediaStore.Images.ImageColumns.LONGITUDE // 11, double
MediaStore.Images.ImageColumns.DESCRIPTION // 12, String
};
如有必要,我也愿意采用另一种方式在文件中保存附加信息以供日后阅读。
I add a text in my MediaStore.Images.ImageColumns.DESCRIPTION field.
这会在数据库中添加一个值。它不会修改您的视频。
It works fine, but if I copy my file to my computer, or other phone and I try to read the metadata again, everything is empty
MediaStore
中的数据没有以某种方式塞入文件中。例如,为文本 (.txt
) 文件在 MediaStore
的 DESCRIPTION
列中设置值不会以某种方式修改该文件中的文本以包含 DESCRIPTION
.
Do you have some other idea to save a custom info in my files to read it later with a different application?
修改您的文件以包含您需要的信息。
我正在使用 MediaStore class 进行一些实验,使用自定义数据保存我的图像和视频以供日后阅读。它工作正常,我找到了为我的媒体项目设置参数的方法,并且我能够在我的 phone 中读取它们。
例如,我正在以快动作录制视频并保存信息以使我的应用 "know" 这是一个快动作视频来制作一些自定义 UI 东西,我添加了我的 MediaStore.Images.ImageColumns.DESCRIPTION
字段中的文字。
它工作正常,但如果我将我的文件复制到我的计算机或其他 phone 并且我尝试再次读取元数据,至少一切都是空的:
MediaStore.Images.ImageColumns.TITLE
MediaStore.Images.ImageColumns.ORIENTATION
MediaStore.Images.ImageColumns.MIME_TYPE
如何避免这种情况?您是否有其他想法在我的文件中保存自定义信息以便稍后使用其他应用程序阅读?
现在我正在保存这些数据:
static final String[] QUERY_PROJECTION = {
MediaStore.Images.ImageColumns._ID, // 0, int
MediaStore.Images.ImageColumns.TITLE, // 1, string
MediaStore.Images.ImageColumns.MIME_TYPE, // 2, string
MediaStore.Images.ImageColumns.DATE_TAKEN, // 3, int
MediaStore.Images.ImageColumns.DATE_MODIFIED, // 4, int
MediaStore.Images.ImageColumns.DATA, // 5, string
MediaStore.Images.ImageColumns.ORIENTATION, // 6, int, 0, 90, 180, 270
MediaStore.Images.ImageColumns.WIDTH, // 7, int
MediaStore.Images.ImageColumns.HEIGHT, // 8, int
MediaStore.Images.ImageColumns.SIZE, // 9, long
MediaStore.Images.ImageColumns.LATITUDE, // 10, double
MediaStore.Images.ImageColumns.LONGITUDE // 11, double
MediaStore.Images.ImageColumns.DESCRIPTION // 12, String
};
如有必要,我也愿意采用另一种方式在文件中保存附加信息以供日后阅读。
I add a text in my MediaStore.Images.ImageColumns.DESCRIPTION field.
这会在数据库中添加一个值。它不会修改您的视频。
It works fine, but if I copy my file to my computer, or other phone and I try to read the metadata again, everything is empty
MediaStore
中的数据没有以某种方式塞入文件中。例如,为文本 (.txt
) 文件在 MediaStore
的 DESCRIPTION
列中设置值不会以某种方式修改该文件中的文本以包含 DESCRIPTION
.
Do you have some other idea to save a custom info in my files to read it later with a different application?
修改您的文件以包含您需要的信息。