В моем приложении для Android я получаю отчеты Crashlytics, например:
java.lang.RuntimeException: ucnv_open failed: U_FILE_ACCESS_ERROR
at libcore.icu.NativeConverter.openConverter(NativeConverter.java)
at java.nio.charset.CharsetDecoderICU.newInstance(CharsetDecoderICU.java:55)
at java.nio.charset.CharsetICU.newDecoder(CharsetICU.java:23)
at libcore.net.UriCodec.appendDecoded(UriCodec.java:289)
at libcore.net.UriCodec.decode(UriCodec.java:274)
at android.net.Uri.getQueryParameter(Uri.java:1713)
или вот так:
java.lang.RuntimeException: ucnv_open failed: U_FILE_ACCESS_ERROR
at libcore.icu.NativeConverter.openConverter(NativeConverter.java)
at java.nio.charset.CharsetDecoderICU.newInstance(CharsetDecoderICU.java:55)
at java.nio.charset.CharsetICU.newDecoder(CharsetICU.java:23)
at libcore.net.UriCodec.appendDecoded(UriCodec.java:289)
at libcore.net.UriCodec.decode(UriCodec.java:274)
at android.net.Uri.decode(Uri.java:1946)
at android.net.Uri$PathPart.getPathSegments(Uri.java:2162)
at android.net.Uri$HierarchicalUri.getPathSegments(Uri.java:1275)
at android.content.UriMatcher.match(UriMatcher.java:219)
URI, с которыми я работаю, абсолютно корректны,и я не внес никаких изменений в соответствующий код со своей стороны, но я начал получать такие отчеты только недавно, пока приложение находилось в производстве уже более года.
Есть ли что-то, что я могусделать, чтобы избежать такого рода ошибок, или хотя бы немного лучше понять их причину?