报错IllegalArgumentException("Log level must be one of Log.VERBOSE, Log.DEBUG," + " Log.INFO, Log.WARN, or Log.ERROR")的解决
发布时间:2023-01-25 06:30:01
Glide只允许设置为Log.VERBOSE, Log.DEBUG, Log.INFO, Log.WARN, or Log.ERROR其中之一。如果设置了其他值,就会抛出这个异常。如何解决解决方法是在初始化Glide之前,使用Glide.setLogLevel正确设置日志级别,XXX应该是 Log.VERBOSE, Log.DEBUG, Log.INFO, Log.WARN, or Log.ERROR 之一。使用例子可以这样做:<pre><code class='java'>Glide.with .setLogLevel .load .into;或者<pre><code class='java'>Glide.setLogLevel;Glide.with .load .into;这样会在Glide调用之前设置日志级别为Log.ERROR。如果你想让log level 变为debug,你可以把ERROR改成DEBUG<pre><code class='java'>Glide.setLogLevel;
报错的原因
这个异常是由于Glide在初始化时,日志级别设置不正确造成的。Glide只允许设置为Log.VERBOSE, Log.DEBUG, Log.INFO, Log.WARN, or Log.ERROR其中之一。如果设置了其他值,就会抛出这个异常。
如何解决
解决方法是在初始化Glide之前,使用Glide.setLogLevel(Log.XXX)正确设置日志级别,XXX应该是 Log.VERBOSE, Log.DEBUG, Log.INFO, Log.WARN, or Log.ERROR 之一。例如:
Glide.setLogLevel(Log.ERROR);
Glide.with(context).load(imageUrl).into(imageView);
注意:在生产环境中建议设置为Log.ERROR,因为这样可以减少不必要的日志输出。
使用例子
可以这样做:
Glide.with(context)
.setLogLevel(Log.ERROR)
.load(imageUrl)
.into(imageView);
或者
Glide.setLogLevel(Log.ERROR);
Glide.with(context)
.load(imageUrl)
.into(imageView);
这样会在Glide调用之前设置日志级别为Log.ERROR。
如果你想让log level 变为debug,你可以把ERROR改成DEBUG
Glide.setLogLevel(Log.DEBUG);