I've been trying to use gRPC (Grpc.Core.Xamarin) from a multi-platform (Android+iOS) Xamarin.Forms app, but without success.
What I would expect to work is:
1. With Visual Studio 2019, create a Xamarin.Forms multi-platform mobile app.
2. Add the NuGet packages Grpc.Core.Xamarin, Grpc.Tools and Google.Protobuf packages (latest stable versions)
3. Add the "Greeter.proto" to the shared part of the code.
This works fine for Android, but not for iOS, where it refuses to compile because of linker errors.
There exists articles suggesting adding IsCxx tags in .target files, but I simply can't make it work. (After 3 days of trying)
I have also tried using Grpc.Net.Client, which compiles just fine, but fails due to some underlying problems with the HttpClient implementation on both Android and iOS. Perhaps the support for HTTP/2 is buggy/incomplete.
I can't help feeling that gRPC should be an "out of the box" feature for Xamarin, but it seems not to be the case.
If someone from the Xamarin team reads this, then please make it a priority in the future. I really like Xamarin, but this is a deal-breaker for using Xamarin for some projects.