You can find the original sample here. As you can find there - swift allows passing nil into the base (super) constructor.
Apple documentation for this constructor is here.
It doesn't crush
It crashes with ANE on CustomAnnotationView creation step.
The documentation does not mention it - but the headers do allow a null for the first (annotation) argument.
@mykyta-bondarenko-gl mmh according to https://github.com/xamarin/xamarin-macios/blob/master/src/mapkit.cs#L102-L106 it seems MKAnnotationView's constructor has the right [NullAllowed].
However MKPinAnnotationView's constructor seems incorrect (missing [NullAllowed]) https://github.com/xamarin/xamarin-macios/blob/master/src/mapkit.cs#L816-L821.
Note: @spouliot the documentation does mention it https://developer.apple.com/documentation/mapkit/mkannotationview/1452779-initwithannotation?language=objc
reuseIdentifier
If you plan to reuse the annotation view for similar types of annotations, pass a string to identify it. Although you can pass nil if you do not intend to reuse the view, reusing annotation views is generally recommended.
@VincentDondain [NullAllowed] should be for the first parameter too https://github.com/xamarin/xamarin-macios/blob/master/src/mapkit.cs#L102-L106
@VincentDondain you missed the first in my comment, the second argument is correct (I both docs and bindings)
@spouliot can we merge these changes into the d16-0 too?