【发布时间】:2017-12-09 01:17:50
【问题描述】:
我目前面临一个关于 Xamarin Forms Android 绑定库的问题。 我在绑定项目中放置了一个 .jar 库,但我意识到该库没有完全加载。
当我构建我的绑定项目时,它可以正确编译,但我的输出中仍然有一些警告。
1>BINDINGSGENERATOR:警告 BG8102:Java.Util.LinkedHashMap 类具有未知的基本类型 Java.Util.HashMap。
1>BINDINGSGENERATOR:警告 BG8103:Com.MyParams 类具有无效的基类型 java.util.LinkedHashMap。
1>BINDINGSGENERATOR:警告 BG8701:托管类型 Com.TagOp 中方法 GetParams 中的返回类型无效 com.MyParams。
1>BINDINGSGENERATOR:警告 BG8801:托管类型 Com.TagOp 中的方法 TagOps 中的参数类型 com.MyParams 无效。
1>BINDINGSGENERATOR:警告 BG8801:托管类型 Com.TagOp 中的方法 TagOps 中的参数类型 com.MyParams 无效。
1>BINDINGSGENERATOR:警告 BG8801:托管类型 Com.Tag 中的方法 TagPage 中的参数类型 com.MyParams 无效。
在我的 Android 代码中,我无法使用 Com.MyParams 类,因为它没有加载。
自 Xamarin for Visual Studio 2017 更新后出现此问题。
你有解决这个问题的方法吗?提前致谢。
【问题讨论】:
-
你检查了你的Android项目源代码,那个项目依赖其他库吗?如果是这样,您需要将其他库导入到您的绑定项目中。
-
我的 Android 项目引用了 Xamarin 库和我的 Binding 项目。当我看到绑定项目的
obj/文件夹时,我的com.MyParams没有生成。所以我的猜测是绑定项目不会生成这个类,因为我在主帖上发布了警告。 -
“这个问题是在Xamarin for Visual Studio 2017更新后出现的。”,你的意思是不更新Xamarin就好了吗?什么版本?
-
我已经在 5 月更新了 Xamarin,它在 VS2017 上将不再工作。我正在使用 Xamarin 4.5.0.486
-
我有一个通用指南供您参考:gist.github.com/JonDouglas/dda6d8ace7d071b0e8cb 正如许多人之前指出的,您很可能缺少生成这些类型的依赖库。
标签: xamarin binding xamarin.android xamarin.forms