Вы не можете вернуть то, что еще не было загружено. Другими словами, вы не можете просто вернуть целое число prediction
как результат метода или просто использовать его вне метода onSuccess()
, поскольку оно всегда будет иметь начальное значение из-за асинхронного поведения этого метода. Это означает, что к тому времени, когда вы пытаетесь вернуть этот результат или использовать его вне обратного вызова, предсказание еще не завершило работу, и поэтому оно недоступно.
Для быстрого решения этой проблемы можно использовать целое число prediction
только внутри метода onSuccess()
, в противном случае я рекомендую вам просмотреть последнюю часть моего ответа из этого сообщения , в котором я объяснил, как это можно сделать с помощью пользовательского обратного вызова. Вы также можете взглянуть на это видео для лучшего понимания. Оба ресурса предназначены для базы данных реального времени Firebase, но в вашем случае применяются те же правила.