improve xamarin platform detection
diff --git a/src/csharp/Grpc.Core/Internal/PlatformApis.cs b/src/csharp/Grpc.Core/Internal/PlatformApis.cs
index 6c4ee0b..c501aa8 100644
--- a/src/csharp/Grpc.Core/Internal/PlatformApis.cs
+++ b/src/csharp/Grpc.Core/Internal/PlatformApis.cs
@@ -33,8 +33,9 @@
     internal static class PlatformApis
     {
         const string UnityEngineApplicationClassName = "UnityEngine.Application, UnityEngine";
-        const string XamarinAndroidActivityClassName = "Android.App.Activity, Mono.Android";
-        const string XamariniOSEnumClassName = "Mono.CSharp.Enum, Mono.CSharp";
+        const string XamarinAndroidObjectClassName = "Java.Lang.Object, Mono.Android";
+        const string XamarinIOSObjectClassName = "Foundation.NSObject, Xamarin.iOS";
+
         static readonly bool isLinux;
         static readonly bool isMacOSX;
         static readonly bool isWindows;
@@ -42,7 +43,7 @@
         static readonly bool isNetCore;
         static readonly bool isUnity;
         static readonly bool isXamarin;
-        static readonly bool isXamariniOS;
+        static readonly bool isXamarinIOS;
         static readonly bool isXamarinAndroid;
 
         static PlatformApis()
@@ -63,9 +64,9 @@
 #endif
             isMono = Type.GetType("Mono.Runtime") != null;
             isUnity = Type.GetType(UnityEngineApplicationClassName) != null;
-            isXamariniOS = Type.GetType(XamariniOSEnumClassName) != null;
-            isXamarinAndroid = Type.GetType(XamarinAndroidActivityClassName) != null;
-            isXamarin = isXamariniOS || isXamarinAndroid;
+            isXamarinIOS = Type.GetType(XamarinIOSObjectClassName) != null;
+            isXamarinAndroid = Type.GetType(XamarinAndroidObjectClassName) != null;
+            isXamarin = isXamarinIOS || isXamarinAndroid;
         }
 
         public static bool IsLinux
@@ -108,9 +109,9 @@
         /// <summary>
         /// true if running on Xamarin.iOS, false otherwise.
         /// </summary>
-        public static bool IsXamariniOS
+        public static bool IsXamarinIOS
         {
-            get { return isXamariniOS; }
+            get { return isXamarinIOS; }
         }
 
         /// <summary>