Xamarin包装器地狱 - 处理许多外部依赖

时间:2017-10-24 13:49:35

标签: .net xamarin binding xamarin.ios xamarin.android

我有一个让我度身不眠的话题。它的Xamarin绑定包装器。我有一个项目需要使用外部库。

在iOS方面,它并不是那么糟糕 - 只有6个框架。 但谈到Android - 我们有大约10-15个罐子和6个aars。 他们中的大多数经常更新。

包装所有这一切都是一场可怕而可怕的噩梦。怎么处理?包装项目几乎不可重复使用,存在大量错误。每次更新都需要我们2-3周的完整团队工作来包装它。之后,由于参考问题,我们还有1-2周的时间来实施它。

需要一些更简单的方法。你如何处理你的包装?是否有可能使用某种合并罐/罐和框架来简化这项工作?

1 个答案:

答案 0 :(得分:0)

  

需要一些更简单的方法。你如何处理你的包装?是否有可能使用某种合并罐/罐和框架来简化这项工作?

您可以参考Binding a Java Library,它使用JNI直接调用Java库代码中的调用,创建一个{C}包装器自动包装库的Bindings Library,这样您就可以通过C#调用来调用Java代码。

对于.Jar lib,请参阅Binding a .JAR,对于.aar,请查看此文档:Binding an .AAR

有时在创建绑定库后,构建此lib时会显示一些错误,然后您可能需要检查Customizing BindingsTroubleshooting Bindings。通常可以通过修改元数据文件或添加其他部分类/接口来解决问题,然后根据原始Java库重写它。