2017-03-27 55 views
3

我想创造我的Android SDK Xamarin支持(这样潜在的客户可以实现它作为Xamarin Android应用

我试图避免使用AAR,因为我希望资源可供客户端使用,所以客户端可以自定义布局。在Android库中,它通常非常容易,因为可以只从Java类创建JAR文件并将res文件夹保持原样所有的资源都可以编辑 我试图用xamarin studio来做同样的事情:我找到jar下的jar文件,并在lib/jni下添加了.so文件,然后我将res文件夹的内容复制到Resources。 结果是: 在Xamarin应用程序(即使用绑定项目中的dll)我可以看到Resources。但!当我运行java类(我在SDK代码中使用这些资源)时出现错误: java.lang.NoClassDefFoundError:失败的解决方案:L ....../R $布局。 我没有找到关于使用罐外资源的任何文档...

是否有另一种选择,可能是在AAR内部定义的Android资源,以便在AAR外部覆盖它们。

预先感谢任何回答/参考

回答

2

一个JAR和AAR之间唯一的主要区别是,AARS可以包括资源。如果客户需要定制资源,则有多种方法。

  1. Xamarin.Android类库,可以定制,重新编译并添加到项目中。
  2. 一个Android类库,可以自定义,然后打包到AAR中以被绑定项目绑定。

最后,您总是可以指示您的客户有意地重写您的图书馆资源,因为应用程序资源将优先化,而不是图书馆。

https://developer.android.com/studio/write/add-resources.html#resource_merging

+0

谢谢@Jon Douglas。我选择了“第三个”选项(“Finally ...”),覆盖Xamarin应用程序的大部分资源,现在可以自定义元素。 – Ruthinke