资源已在 API 级别 25 中弃用

Resources was deprecated in API level 25

Resources was deprecated in API level 25,现在怎么修改呢?

public Resources getResources(Resources resources) {
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
        Configuration config = resources.getConfiguration();
        Locale locale = LanguageSetting.getLanguage(activity);
        config.setLocale(locale);
        DisplayMetrics metrics = resources.getDisplayMetrics();
        return new Resources(activity.getAssets(), metrics, config);
    } else {
        return resources;
    }
}

Image

删除检查设备 android OS 是否小于 N 的条件。这里:if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {。 该警告和弃用行应该消失。

您的代码现在应该如下所示:

public Resources getResources(Resources resources) {
        Configuration config = resources.getConfiguration();
        Locale locale = LanguageSetting.getLanguage(activity);
        config.setLocale(locale);
        DisplayMetrics metrics = resources.getDisplayMetrics();
        return new Resources(getActivity().getAssets(), metrics, config);

}`