Вы не можете использовать что-то, что еще не было загружено.Другими словами, вы не можете просто использовать следующую строку кода:
id_customer = customers.get(0).getId_customer();
За пределами метода onSuccess()
, потому что это всегда будет null
из-за асинхронного поведения этого метода.Это означает, что к тому времени, когда вы пытаетесь использовать переменную id_customer
вне этого метода, данные еще не закончили загрузку из базы данных, и поэтому они недоступны.
Быстрое решение этой проблемыбудет использовать этот результат только внутри метода onSuccess()
, или если вы хотите использовать его снаружи, я рекомендую вам увидеть последнюю часть моего ответа из этого поста , в которомЯ объяснил, как это можно сделать с помощью пользовательского обратного вызова.Вы также можете взглянуть на это видео для лучшего понимания.