Что такое "Throwable Result Of Method Call Ignored" в андроид студии?
У меня есть такие коды в Android Studio:
@Override
public void onLocationChanged(AMapLocation amapLocation) {
if (amapLocation != null && amapLocation.getAMapException() != null
&& amapLocation.getAMapException().getErrorCode() == 0) {
// get location information
mLocation = amapLocation;
MyApp.getInstance().getPrefs().Latitude()
.put("" + amapLocation.getLatitude());
MyApp.getInstance().getPrefs().Longitude()
.put("" + amapLocation.getLongitude());
}
}
Метод getAMapException возвращает экземпляр AMapLocException, который расширяется от Exception.
Теперь андроид студия показывает некоторые советы, и я не знаю, как с ними справиться.
Сообщает о вызовах определенных методов, в которых результат вызова игнорируется и которые возвращают объект типа (или подтипа) Throwable. Обычно эти типы методов подразумеваются как фабричные методы для исключений, и результат должен быть выдан.
и я также нашел источник файла ThrowableResultOfMethodCallIgnored.java от Google, но я до сих пор не знаю, как с этим справиться.
1 ответ
Это просто предупреждение о том, что вы вызвали метод, который возвращает Throwable, но на самом деле вы его не выбрасываете.
Одним из решений было бы сделать следующее
Throwable t = amapLocation.getAMapException();
if (t != null) {
throw t;
}
Конечно, вы не должны бросать исключения. Вы можете либо игнорировать, либо использовать его в условных выражениях, как у вас.