【问题标题】:Xamarin aar binding. Many class declaration missedXamarin aar 绑定。许多班级声明错过了
【发布时间】:2016-11-25 14:28:40
【问题描述】:

我正在尝试将 .aar 文件绑定到 Xamarin Android 项目。 我使用了 Bindings Library (Android) 项目,将我的 aar 包含到那里并构建。一切顺利。

在 Xamarin Android 项目中,我添加了对生成的 .dll 的引用

它似乎只暴露了几个接口,但 aar 肯定有大量的类浮出水面(我可以在 Android Studio 中看到它们)。 其他类和成员在哪里?

我做了什么: 我修改了我的 Metada.xml 如下(以公开私有声明并抑制混淆)。请忽略它的“(”括号,这是为了正确显示。

  <metadata>
  <attr path="/api/package[@name='com.android.biomini']/class[@name='BioMiniAndroid']"
        name="visibility">public</attr>
  <attr path="/api/package[@name='com.android.biomini']/class[@name='BioMiniAndroid']"
        name="obfuscated">false</attr>
</metadata>

它没有帮助。如何让它显示 .aar 具有的所有类和接口?

谢谢。

【问题讨论】:

    标签: c# android xamarin aar


    【解决方案1】:

    通过创建类型public,您在解决这些问题的正确路径上。

    在 Xamarin.Android 项目中无法访问 JAR 文件类/成员的原因有很多,您可以阅读其中的原因和可能的解决方案here

    我建议阅读 JAR binding documentation 以便更好地理解

    【讨论】:

      【解决方案2】:

      所有内容都从里到外读过。未找到解决方案。 问题似乎是 Xamarin 错误。 Xamarin 建议不要将其引用到绑定项目,而是将 .dll 复制到旁边的某个地方并引用那里(通过“浏览”引用,而不是“解决方案”)。即使它很尴尬,它也有效。这是目前可行的解决方案。

      谢谢。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-08-30
        • 2017-10-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-07
        相关资源
        最近更新 更多