diff --git a/external/Java.Interop b/external/Java.Interop index a3de91efdae..f9faaaba0ca 160000 --- a/external/Java.Interop +++ b/external/Java.Interop @@ -1 +1 @@ -Subproject commit a3de91efdaec04b3927b755a07018e8d26cfdc71 +Subproject commit f9faaaba0ca2f3721ea1de33fd793edeae059474 diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/GenerateJavaStubs.cs b/src/Xamarin.Android.Build.Tasks/Tasks/GenerateJavaStubs.cs index 0bc8cd00396..07a7c2fba72 100644 --- a/src/Xamarin.Android.Build.Tasks/Tasks/GenerateJavaStubs.cs +++ b/src/Xamarin.Android.Build.Tasks/Tasks/GenerateJavaStubs.cs @@ -328,6 +328,11 @@ bool CreateJavaSources (IEnumerable javaTypes, TypeDefinitionCac bool ok = true; foreach (var t in javaTypes) { + if (t.IsInterface) { + // Interfaces are in typemap but they shouldn't have JCW generated for them + continue; + } + using (var writer = MemoryStreamPool.Shared.CreateStreamWriter ()) { try { var jti = new JavaCallableWrapperGenerator (t, Log.LogWarning, cache) { diff --git a/src/monodroid/jni/build-info.hh b/src/monodroid/jni/build-info.hh index fe65a5d6fbb..783b2cd6a23 100644 --- a/src/monodroid/jni/build-info.hh +++ b/src/monodroid/jni/build-info.hh @@ -8,6 +8,7 @@ namespace xamarin::android::internal { #define STRINGIFY(_val_) #_val_ +#define API_STRING(_api_) STRINGIFY(_api_) #define VERSION_STRING(_major_, _minor_, _build_) STRINGIFY(_major_) "." STRINGIFY(_minor_) "." STRINGIFY(_build_) class BuildInfo final @@ -50,7 +51,7 @@ namespace xamarin::android::internal static constexpr char ndk_api_level[] = #if defined (__ANDROID_API__) - STRINGIFY(__ANDROID_API__); + API_STRING(__ANDROID_API__); #else // def __ANDROID_API__ ""; #endif // ndef __ANDROID_API__