The following table shows how Dart values are received on the
platform side and vice versa:

Java

Kotlin

Obj-C

Swift

C++

C

null

null

bool

java.lang.Boolean

int

java.lang.Integer

int, if 32 bits not enough

java.lang.Long

double

java.lang.Double

String

java.lang.String

Uint8List

byte[]

Int32List

int[]

Int64List

long[]

Float32List

float[]

Float64List

double[]

List