O problema está relacionado ao StandardMessageCodec, o codec default usado pelos plugins no Flutter.
Ao tentar passar um dos valores da enum DirectCheckout.CardType pelo codec (ex: .masterCard), ele quebra, mesmo que a enum seja do tipo String. Então isso mostra que o correto é trabalhar estritamente com os tipos mencionados na documentação do codec.
card.getType() // Não suportado pelo codec ❌
card.getType()?.rawValue // Suportado pelo codec ✅
O problema está relacionado ao StandardMessageCodec, o codec
default
usado pelos plugins noFlutter
.Ao tentar passar um dos valores da enum
DirectCheckout.CardType
pelo codec (ex: .masterCard), ele quebra, mesmo que a enum seja do tipoString
. Então isso mostra que o correto é trabalhar estritamente com os tipos mencionados na documentação do codec.Encontrei uma issue similar no repo do flutter, sobre este mesmo erro no
in_app_purchases
rodando no ios 15.4: iOS15.4 in_app_purchase got crash because of Unsupported value for standard codecFixes #5