[英]Xamarin.Android-The call is ambiguous between the following methods or properties
[英]Xamarin.Android: The call is ambiguous between the following methods or properties
我收到以下錯誤:
該調用在以下方法或屬性之間是不明確的:'Java.Interop.JavaObjectExtensions.JavaCast(Android.Runtime.IJavaObject)'和'Android.Runtime.Extensions.JavaCast(Android.Runtime.IJavaObject)'
使用此代碼:
// Get a pointer to the Java class.
IntPtr jClass = JNIEnv.FindClass("com/companyname/appname/JniClass");
// constructor.
IntPtr defaultConstructor = JNIEnv.GetMethodID(jClass,
"<init>",
"()V");
// new instance of the class.
IntPtr instance = JNIEnv.NewObject(jClass, defaultConstructor);
// Find method.
IntPtr methodID = JNIEnv.GetMethodID(jClass, "getResult", "()Ljava/lang/String;");
// Call the method.
IntPtr resultPtr = JNIEnv.CallObjectMethod(instance, methodID);
// Convert the pointer to return value
Java.Lang.Object jObject = new Java.Lang.Object(resultPtr, JniHandleOwnership.TransferLocalRef);
Java.Lang.String result = jObject.JavaCast<Java.Lang.String>(); // Compiler Error
我很好奇為什么編譯器認為此代碼是錯誤的。
僅針對那些仍然遇到相同錯誤的人!
就我而言,我刪除了對命名空間的引用
Android.Runtime
可能是你的情況
Android.Runtime.Extension
可能會幫助某人!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.