感谢您阅读这个问题。我相信这个网站上的专家将能够提供我需要的帮助。
我正在尝试编写一个应用程序,允许用户在他们的 Android 手机上编辑照片的 exif 信息。
作为改善用户体验的一部分,我想尽可能应用数据验证。
对于 Exif 标签 - TAG_GPS_PROCESSING_METHOD,我无法正确应用验证。
这是我应用的部分代码:
String strGPSProc = etGPSProc.getText().toString();
if(strGPSProc.equalsIgnoreCase("GPS") || strGPSProc.equalsIgnoreCase("CELLID") || strGPSProc.equalsIgnoreCase("WLAN") || strGPSProc.equalsIgnoreCase("MANUAL") ) {
returnValue = true;
}else {
returnValue=false;
showToast("Incorrect value for GPS Processing Method. Correct value options are GPS, CELLID, WLAN or MANUAL.");
etGPSProc.requestFocus();
}
此代码检查在用于 GPSProcessingMethod 的 EditText 中输入的值是否具有 EXIF 文档中描述的四个规定值中的任何一个。
但是当我尝试使用 setAttribute() 和 saveAttributes() 函数保存它时,logcat 中出现了一个不可捕获的异常。
Unsupported encoding for GPSProcessingMethod
我从 Exif 文档中了解到 GPSProcessingMethod 的值需要与一些标头信息一起存储。
我需要一些专家建议如何正确实现这一点,而不使用任何其他第 3 部分类。