diff --git a/native/graphics/jni/imagedecoder.cpp b/native/graphics/jni/imagedecoder.cpp index e3b575e066d6d..0f6190722aa32 100644 --- a/native/graphics/jni/imagedecoder.cpp +++ b/native/graphics/jni/imagedecoder.cpp @@ -61,6 +61,37 @@ int ResultToErrorCode(SkCodec::Result result) { } } +const char* AImageDecoder_resultToString(int result) { + switch (result) { + case ANDROID_IMAGE_DECODER_SUCCESS: + return "ANDROID_IMAGE_DECODER_SUCCESS"; + case ANDROID_IMAGE_DECODER_INCOMPLETE: + return "ANDROID_IMAGE_DECODER_INCOMPLETE"; + case ANDROID_IMAGE_DECODER_ERROR: + return "ANDROID_IMAGE_DECODER_ERROR"; + case ANDROID_IMAGE_DECODER_INVALID_CONVERSION: + return "ANDROID_IMAGE_DECODER_INVALID_CONVERSION"; + case ANDROID_IMAGE_DECODER_INVALID_SCALE: + return "ANDROID_IMAGE_DECODER_INVALID_SCALE"; + case ANDROID_IMAGE_DECODER_BAD_PARAMETER: + return "ANDROID_IMAGE_DECODER_BAD_PARAMETER"; + case ANDROID_IMAGE_DECODER_INVALID_INPUT: + return "ANDROID_IMAGE_DECODER_INVALID_INPUT"; + case ANDROID_IMAGE_DECODER_SEEK_ERROR: + return "ANDROID_IMAGE_DECODER_SEEK_ERROR"; + case ANDROID_IMAGE_DECODER_INTERNAL_ERROR: + return "ANDROID_IMAGE_DECODER_INTERNAL_ERROR"; + case ANDROID_IMAGE_DECODER_UNSUPPORTED_FORMAT: + return "ANDROID_IMAGE_DECODER_UNSUPPORTED_FORMAT"; + case ANDROID_IMAGE_DECODER_FINISHED: + return "ANDROID_IMAGE_DECODER_FINISHED"; + case ANDROID_IMAGE_DECODER_INVALID_STATE: + return "ANDROID_IMAGE_DECODER_INVALID_STATE"; + default: + return nullptr; + } +} + static int createFromStream(std::unique_ptr stream, AImageDecoder** outDecoder) { SkCodec::Result result; auto codec = SkCodec::MakeFromStream(std::move(stream), &result, nullptr, diff --git a/native/graphics/jni/libjnigraphics.map.txt b/native/graphics/jni/libjnigraphics.map.txt index c8f115178e231..d8c3cefd30ca9 100644 --- a/native/graphics/jni/libjnigraphics.map.txt +++ b/native/graphics/jni/libjnigraphics.map.txt @@ -1,5 +1,6 @@ LIBJNIGRAPHICS { global: + AImageDecoder_resultToString; # introduced=31 AImageDecoder_createFromAAsset; # introduced=30 AImageDecoder_createFromFd; # introduced=30 AImageDecoder_createFromBuffer; # introduced=30