Protocol 'AdaptySystemEventParameters' as a type cannot conform to 'Encodable' Flutter error
O
Oleh Savenko
I have this issue while doing iOS build. Android is good. What I need to do?
The error is in this lines
//
// EventType.swift
// Adapty
//
// Created by Aleksei Valiano on 07.10.2022.
//
import Foundation
enum EventType {
case appOpened
case paywallShowed(AdaptyPaywallShowedParameters)
case onboardingScreenShowed(AdaptyOnboardingScreenParameters)
case system(AdaptySystemEventParameters)
}
extension EventType {
enum Name {
static let appOpened = "app_opened"
static let paywallShowed = "paywall_showed"
static let onboardingScreenShowed = "onboarding_screen_showed"
static let system = "system_log"
}
static let systemEvents = [Name.system]
var name: String {
switch self {
case .appOpened:
return Name.appOpened
case .paywallShowed:
return Name.paywallShowed
case .onboardingScreenShowed:
return Name.onboardingScreenShowed
case .system:
return Name.system
}
}
}
extension EventType: Encodable {
func encode(to encoder: Encoder) throws {
var container = encoder.container(keyedBy: Event.CodingKeys.self)
switch self {
case .appOpened:
try container.encode(Name.appOpened, forKey: .type)
case let .paywallShowed(value):
try container.encode(Name.paywallShowed, forKey: .type)
try value.encode(to: encoder)
case let .onboardingScreenShowed(value):
try container.encode(Name.onboardingScreenShowed, forKey: .type)
try value.encode(to: encoder)
case let .system(value):
try container.encode(Name.system, forKey: .type)
let data = try Backend.encoder.encode(value)
let string = String(decoding: data, as: UTF8.self)
try container.encode(string, forKey: .customData)
}
}
}
A
Adapty Support
Hey Oleh! It should be enought to update Xcode version here. If that alone doesn't help, please let us know what is SDk version in question
Thanks!