Знаете ли вы, почему я улавливаю исключение NullPointerException при вызове функции getInputStream()?NullPointerException on getInputstream
Я сделал журнал URLConnection, и ссылка правильная ... Я не могу понять, в чем проблема.
public Bitmap getBitmap(String resolution) {
URL url = null;
Bitmap bmp = null;
switch(resolution) {
case "thumb":
url = thumbUrl;
break;
case "low":
url = lowresUrl;
break;
case "standard":
url = standardresUrl;
break;
}
try {
URLConnection conn = url.openConnection();
InputStream in = conn.getInputStream();
bmp = BitmapFactory.decodeStream(in);
in.close();
}
catch (Exception e) {
Log.e("Error", e.getMessage());
e.printStackTrace();
}
return bmp;
}
В продолжение этого разговора у меня была такая же проблема, как у Микеле. e.getMessage() действительно возвращал значение null. Log.e выдает исключение, когда вы отправляете его null, поэтому для определения того, какое исключение было выбрано, я изменил инструкцию следующим образом: Log.e («Ошибка», e.toString()); и исключение оказалось «Network: android.os.NetworkOnMainThreadException», для меня в любом случае. После некоторого чтения я узнал, что вы не можете запускать блокировку вызовов ввода-вывода в основном потоке пользовательского интерфейса, что имеет смысл. – Ryan