info: prevent false positive media results (e.g. JPEG on Galaxy S7)
This commit is contained in:
parent
949befe9cc
commit
752749bafe
2 changed files with 11 additions and 3 deletions
|
@ -49,6 +49,7 @@ import deckers.thibault.aves.utils.BitmapUtils
|
||||||
import deckers.thibault.aves.utils.LogUtils
|
import deckers.thibault.aves.utils.LogUtils
|
||||||
import deckers.thibault.aves.utils.MimeTypes
|
import deckers.thibault.aves.utils.MimeTypes
|
||||||
import deckers.thibault.aves.utils.MimeTypes.isImage
|
import deckers.thibault.aves.utils.MimeTypes.isImage
|
||||||
|
import deckers.thibault.aves.utils.MimeTypes.isMultimedia
|
||||||
import deckers.thibault.aves.utils.MimeTypes.isSupportedByMetadataExtractor
|
import deckers.thibault.aves.utils.MimeTypes.isSupportedByMetadataExtractor
|
||||||
import deckers.thibault.aves.utils.MimeTypes.isVideo
|
import deckers.thibault.aves.utils.MimeTypes.isVideo
|
||||||
import deckers.thibault.aves.utils.StorageUtils
|
import deckers.thibault.aves.utils.StorageUtils
|
||||||
|
@ -150,9 +151,11 @@ class MetadataHandler(private val context: Context) : MethodCallHandler {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
val mediaDir = getAllMetadataByMediaMetadataRetriever(uri)
|
if (isMultimedia(mimeType)) {
|
||||||
if (mediaDir.isNotEmpty()) {
|
val mediaDir = getAllMetadataByMediaMetadataRetriever(uri)
|
||||||
metadataMap[Metadata.DIR_MEDIA] = mediaDir
|
if (mediaDir.isNotEmpty()) {
|
||||||
|
metadataMap[Metadata.DIR_MEDIA] = mediaDir
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (metadataMap.isNotEmpty()) {
|
if (metadataMap.isNotEmpty()) {
|
||||||
|
|
|
@ -30,6 +30,11 @@ object MimeTypes {
|
||||||
|
|
||||||
fun isVideo(mimeType: String?) = mimeType != null && mimeType.startsWith(VIDEO)
|
fun isVideo(mimeType: String?) = mimeType != null && mimeType.startsWith(VIDEO)
|
||||||
|
|
||||||
|
fun isMultimedia(mimeType: String?) = when (mimeType) {
|
||||||
|
HEIC, HEIF -> true
|
||||||
|
else -> isVideo(mimeType)
|
||||||
|
}
|
||||||
|
|
||||||
// returns whether the specified MIME type represents
|
// returns whether the specified MIME type represents
|
||||||
// a raster image format that allows an alpha channel
|
// a raster image format that allows an alpha channel
|
||||||
fun canHaveAlpha(mimeType: String?) = when (mimeType) {
|
fun canHaveAlpha(mimeType: String?) = when (mimeType) {
|
||||||
|
|
Loading…
Reference in a new issue