我已将Xamarin.GooglePlayServices.Base nuget软件包安装到我现有的Xamarin.Android应用程序中。从那时起,它无法使用以下错误消息构建:
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(3,3):错误:错误XA4212:类型Android.Support.V4.App.JobIntentService/JobServiceEngineImpl
实现Android.Runtime.IJavaObject
但不会继承Java.Lang.Object
或Java.Lang.Throwable
。这不受支持。 (Happimeter.Watch.Droid)。
我的问题:如何修复此错误?
编辑1: 安装nuget软件包后添加了以下软件包:
Successfully installed 'Xamarin.GooglePlayServices.Location 60.1142.1' to Happimeter.Watch.Droid
Successfully installed 'Xamarin.GooglePlayServices.Base 60.1142.1' to Happimeter.Watch.Droid
Successfully installed 'Xamarin.GooglePlayServices.Tasks 60.1142.1' to Happimeter.Watch.Droid
Successfully installed 'Xamarin.GooglePlayServices.Basement 60.1142.1' to Happimeter.Watch.Droid
Successfully installed 'Xamarin.Build.Download 0.4.9' to Happimeter.Watch.Droid
Successfully installed 'Xamarin.Android.Support.Fragment 26.0.2' to Happimeter.Watch.Droid
Successfully installed 'Xamarin.Android.Support.Media.Compat 26.0.2' to Happimeter.Watch.Droid
Successfully installed 'Xamarin.Android.Support.Core.Utils 26.0.2' to Happimeter.Watch.Droid
Successfully installed 'Xamarin.Android.Support.Core.UI 26.0.2' to Happimeter.Watch.Droid
Successfully installed 'Xamarin.Android.Support.Compat 26.0.2' to Happimeter.Watch.Droid
Successfully installed 'Xamarin.Android.Support.Annotations 26.0.2' to Happimeter.Watch.Droid
编辑2:
这是我的设置:
Visual Studio Community 2017 for Mac
Version 7.3.3 (build 5)
Runtime:
Mono 5.4.1.7 (2017-06/e66d9abbb27) (64-bit)
GTK+ 2.24.23 (Raleigh theme)
Package version: 504010007
=== Xamarin.Android ===
Version: 8.1.3.0 (Visual Studio Community)
Android SDK: /Users/mariusstein/Library/Developer/Xamarin/android-sdk-macosx
Supported Android versions:
6.0 (API level 23)
7.1 (API level 25)
SDK Tools Version: 25.2.3
SDK Platform Tools Version: 25.0.1
SDK Build Tools Version: 25.0.1
Java SDK: /usr
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
Here是一个示例项目,您可以在其中重现该问题:
编辑3: 根据{{3}}我刚刚添加了
<PropertyGroup>
<!-- Other properties -->
<AndroidErrorOnCustomJavaObject>false</AndroidErrorOnCustomJavaObject>
</PropertyGroup>
这会将错误转变为警告。然而,这个解决方案似乎相当不洁净。如果有人建议如何永久解决这个问题,我想听听。
编辑4: 更新到Android Target API 27解决了错误/警告。
答案 0 :(得分:1)
不同版本的Xamarin.GooglePlayServices.Base是针对不同版本的android的目标。例如:60.1142.1需要MonoAndroid,版本= 8.0。您可以在每个版本的依赖项中检查这一点 如果您使用的是目标api 25,则应使用42.1021.1