我是一个月前完成游戏的,直到今天一切都还不错。我在网上遇到错误:

odgovorNormalized = Normalizer.normalize(konResenje, Normalizer.Form.NFD).replaceAll("[^\\p{ASCII}]", "");


如果我转到清单文件并将API级别更改为任何级别,甚至更改为6,我都不会再出错。直到我更改代码中的内容。

我刚刚记得我今天将项目编码更改为Latin。我不知道这是否与此有关。

到今天为止一切正常。

最佳答案

该错误由静态代码分析工具接收。是的,它将编译,是的,它将运行。是的,它将在运行时在任何API
正确的做法是打开API:

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) {
        /* Use Normalizer normally */
    } else {
        /* Fall back on some default behavior */
    }


您可以抑制这样的错误,但始终确保先修复它们:

    @SuppressLint("NewApi")
    public void methodThatUsesNewAPI() {}

09-25 20:58