В соответствии с ошибкой, если photo
- пустая строка, то использование substring(22)
в photo
вызовет исключение, поэтому добавьте еще одну проверку photo.length > 22
, чтобы проверить длину перед подстрокой как:
if (image != null && image != "" && photo.length > 22) {
image
всегда пуст, поскольку image
объявляется и инициализируется непосредственно перед if
, поэтому вы можете изменить условие if
следующим образом:
if (prefs != null) {
var photo = ((prefs.getString('photo') ?? ""));
print('photo');
print(photo);
String image = "";
if (photo.length > 22) {
image = photo.substring(22);
}
} else {
print('usu error');
}