【发布时间】:2017-08-02 23:30:38
【问题描述】:
Media Plugin 有问题。 如果编译目标是 Android 6.0,它在我的设备 V.5.0.1 的调试模式下工作正常。问题是当我在 Release 模式下编译时收到此错误:
> Java.Interop.Tools.Diagnostics.XamarinAndroidException: error XA2006: Could not resolve reference to 'Android.Views.KeyboardShortcutGroup' (defined in assembly 'Xamarin.Android.Support.v7.AppCompat, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null') with scope 'Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065'. When the scope is different from the defining assembly, it usually means that the type is forwarded. ---> Mono.Cecil.ResolutionException: Failed to resolve Android.Views.KeyboardShortcutGroup
in Mono.Linker.Steps.MarkStep.MarkType(TypeReference reference)
in MonoDroid.Tuner.MonoDroidMarkStep.MarkType(TypeReference reference)
in Mono.Linker.Steps.MarkStep.MarkGenericArguments(IGenericInstance instance)
in Mono.Linker.Steps.MarkStep.GetOriginalType(TypeReference type)
in Mono.Linker.Steps.MarkStep.MarkType(TypeReference reference)
in MonoDroid.Tuner.MonoDroidMarkStep.MarkType(TypeReference reference)
in Mono.Linker.Steps.MarkStep.MarkMethodBody(MethodBody body)
in Mono.Linker.Steps.MarkStep.ProcessMethod(MethodDefinition method)
in Mono.Linker.Steps.MarkStep.ProcessQueue()
in Mono.Linker.Steps.MarkStep.Process()
in Mono.Linker.Steps.MarkStep.Process(LinkContext context)
in MonoDroid.Tuner.MonoDroidMarkStep.Process(LinkContext context)
in Mono.Linker.Pipeline.Process(LinkContext context)
in MonoDroid.Tuner.Linker.Process(LinkerOptions options, LinkContext& context)
in Xamarin.Android.Tasks.LinkAssemblies.Execute(DirectoryAssemblyResolver res)
我read,如果我将编译版本更新到 Android 7 (API 24),问题就解决了,但在此之后我的操作按钮无法正常工作。当我点击按钮打开相机时,我收到此错误:
Attempt to invoke virtual method 'android.content.res.XmlResourceParser android.content.pm.ProviderInfo.loadXmlMetaData(android.content.pm.PackageManager, java.lang.String)' on a null object reference
我能做什么?谢谢!
【问题讨论】:
-
您是否尝试过更新所有 Android 支持库 NuGet 包?
-
全部更新到上一版本
-
我建议创建一个全新的项目,将所有库更新到最新版本,安装媒体插件,并正确设置项目属性(将目标 Android 版本和编译版本设置为 Android 7.0 或 7.1)。然后看看你是否仍然遇到同样的问题。您也可以尝试关闭链接器,看看问题是否仍然存在。
标签: c# xamarin xamarin.android xamarin.forms prism