Метод получения Kotlin не был вызванAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Метод получения Kotlin не был вызван

Сообщение Anonymous »

Я портировал довольно большой проект на систему Android с C# на Kotlin.
Теперь я столкнулся со странной ошибкой, заключающейся в том, что иногда методы и части бизнес-логики не выполняются. При отладке я получил зеленое сообщение о том, что «метод не был вызван». Что! Это мятеж!? Я никогда не видел, чтобы программа отказывалась выполнить строку кода, а затем продолжала работу, как будто ничего не произошло, никаких исключений и сообщений журнала.
Мои настройки

Код: Выделить всё

internal class SaleValidator(sharedService: SharedService) : BaseValidatorPart(sharedService) {
private val fiscalReceipt: FiscalReceipt get() = SS.printerState.currentReceipt!!.fiscalReceipt!!;

override fun execute(args: Any) {
// ..
fiscalReceipt.addTurnover(context.sumWDiscount, context.vatId);
fiscalReceipt.updateTax(context.vatId, SS.printerState.taxes[context.vatId]);

}
}
Оборот никогда не добавляется, и когда я пытаюсь войти в метод addTurnover, я получаю это зеленое сообщение в нижней части студии Android: «Метод getFiscalReceipt() не был вызван». Если я помещу свойство на вход «Оценить выражение», я смогу подтвердить, что объект существует и доступен.
  • Это свойство предназначено для сокращения доступа к объекту, и гарантируется, что объект существует, когда этот метод выполняется и осуществляется доступ к методу получения.
  • При этом не используются функции async или suspend. , все является обычными функциями
  • Выполняемый метод валидатора вызывается в блоке try catch
Что мне не хватает? Нужно ли мне прочесывать весь проект и заменять геттеры? В подобных случаях можно ожидать возникновения исключения или, в худшем случае, сбоя приложения. Но никогда не продолжайте делать вид, что ничего не произошло.
Изображение
< /п>

Подробнее здесь: https://stackoverflow.com/questions/790 ... een-called
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»