繁体   English   中英

C# Xamarin Java.Interop 错误?

[英]C# Xamarin Java.Interop error?

您好,自上次Xamarin update以来,我们收到此error

CS0012 类型“IJavaPeerable”是在未引用的程序集中定义的。 您必须添加对程序集“Java.Interop, Version=0.1.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065”的引用。 ImageLibrary C:\\Users\\rutge\\Source\\Repos\\GarderobeApp\\ImageSwiper\\ImageSwiper.cs 33 活动

有人知道这是什么意思吗?

你可以在这里找到

C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\MonoAndroid\\v1.0\\Java.Interop.dll

然后:

  1. 转到您的 Android 项目
  2. 右键单击引用并选择“添加引用”
  3. 浏览文件位置
  4. 添加并完成

如果您仍然遇到错误,请尝试重建您的项目

我在上次更新后出现同样的错误。 您只需添加对 Java.Interop 的引用即可解决问题。

  1. 转到您的 Android 项目
  2. 右键单击引用并选择“添加引用”
  3. 在 Assembly 上,查找 Java.Interop 并添加它
  4. 重建你的项目

如果您需要一些屏幕截图,我可以稍后提供。

就我而言,它有点不同,我找不到 monoandroid 文件夹

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework. 

因此,我进一步搜索并在

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid

这可能是其他人的情况。

您可以将鼠标悬停在违规行上并查看丢失的 DLL。

线路抱怨缺少参考

现在添加缺少的参考;

  1. 打开解决方案资源管理器,在引用中右键单击,然后选择添加引用从解决方案资源管理器添加引用

  2. 在参考管理器中单击浏览,然后再次浏览。 添加参考

  3. 在文件对话框中复制并粘贴此路径:

    C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\MonoAndroid\\v1.0\\

转到DLL路径

单击 Java.Interop.dll

添加文件

  1. 好的,参考经理

您可以直接将C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\MonoAndroid\\v1.0中的C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\MonoAndroid\\v1.0Java.Interop.dll复制到项目的bin/Debug文件夹中以解决该问题。

这个程序对我来说非常有效。

谢谢,

这些错误不是由解决方案或参考资料的问题引起的。 它们是其他更改的副产品,这些更改似乎混淆了ReSharper等工具。 至少在我的情况下这是正确的,我的解决方案仍然可以编译和运行,而无需手动引用任何参考程序集。

有一个 Xamarin 错误报告,但根据我的经验,他们确定这是ReSharper的外部问题。

除了手动添加对项目的引用之外,您还可以通过打开以下命令告诉 ReSharper 简单地忽略错误:

ReSharper -> Windows -> Solution Errors

然后忽略这里的问题。

在我的情况下,当我运行我的 android 应用程序时,iOS 和 Android 使用似乎业务层,但是当我运行 iOS 时,向我显示错误您必须添加对程序集'Java.Interop,版本 = 0.1.0.0,文化 = 中性的引用, PublicKeyToken=84e04ff9cfb79065'

问题:我使用的是 Org.Json 的 JSONObject

https://docs.microsoft.com/en-us/dotnet/api/org.json.jsonobject?view=xamarin-android-sdk-9

这个 dll 只适用于 android

我需要从 System.Json 更改 JsonObject

https://docs.microsoft.com/en-us/dotnet/api/system.json.jsonobject?view=dotnet-plat-ext-2.1

那是我的解决方案,现在我的两个应用程序工作

如果您仍然找不到 Java.Interop,请在 C: 驱动器内的搜索栏中搜索“Java.Interop”并将其添加为对您项目的引用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM