【发布时间】:2016-08-07 12:45:30
【问题描述】:
错误 CS0234:类型或命名空间名称
IBitmap' does not exist in the namespaceCom.Sushi.Hangover'。您是否缺少程序集参考?
我有一个 Android 绑定项目,它有从多个接口继承的类,但这些接口没有生成,因此依赖于它们的所有公共类都无法绑定。
Java 类:
abstract interface Bitmap
{
~~~ (methods removed)
}
api.xml:
<interface abstract="true" deprecated="not deprecated" final="false" name="Bitmap" static="false" visibility="">
如您所见,此接口的 visibility 未设置为 public,因此不会生成 C# 代码,但开始生成依赖于此接口的公共类:
public partial class DrawableDesign : global::Com.Sushi.Hangover.IBitmap {
绑定知道接口,因为它将接口名称从Bitmap 转换为IBitmap。
有什么方法可以强制创建这些接口,而无需返回 Java 代码并将这些接口更改为 public 以将它们作为
visibility="public"放入api.xml?
注意:我使用的是稳定频道(Xamarin.Android 版本:6.0.3.5),因为此客户端没有 Alpha/Beta 访问权限
【问题讨论】:
-
你能在我可以玩的地方贴一个示例 jar 吗?自从我使用 Java 和打包 jar 以来已经太久了。
-
@Cheesebaron 感谢您的提议。来自客户合作伙伴的封闭源代码。他们最近对源代码进行了重大更改,并破坏了 metadata/enummethods/enumfields 文件(250 多行转换让我第一次眼花缭乱......)。客户正在回滚到 Xamarin.Android 的旧(工作)版本及其 Java 代码,以便将客户更改发布到 Google Play...:-/
标签: binding xamarin xamarin.android