Android绑定库失败分辨率:L ...... / R $布局

时间:2017-03-27 13:25:09

标签: xamarin.android

我正在尝试为我的Android SDK创建Xamarin支持(因此潜在客户可以将其实现为Xamarin Android应用。

我试图避免使用AAR,因为我希望客户端可以使用资源,因此客户端可以自定义布局。在android库中,它通常非常简单,因为只能从java类创建JAR文件,并保留res文件夹,并且可以使用所有可用于编辑的资源。 我试图与xamarin工作室做同样的事情:我将罐子放在罐子下面,并在lib / jni下添加了.so文件。然后我将res文件夹内容复制到Resources。 结果是: 在Xamarin应用程序(使用绑定项目中的dll)中,我可以看到参考资料。但!当我运行java类(我在SDK代码中使用这些资源)时,我收到一个错误: java.lang.NoClassDefFoundError:解析失败:L ...... / R $ layout。 我没有找到任何关于在jar外使用资源的文档......

是否有其他选项可能包含在AAR中定义的Android资源,以在AAR之外覆盖它们。

提前感谢您的回答/参考

1 个答案:

答案 0 :(得分:2)

JAR和AAR之间唯一的主要区别是AAR可以包含资源。如果客户需要自定义资源,您可以通过以下几种方式进行自定义。

  1. 可以自定义,重新编译并添加到项目中的Xamarin.Android类库。
  2. 一个Android类库,可以自定义然后打包到AAR中以受绑定项目的约束。
  3. 最后,您总是可以指示您的客户有目的地覆盖您的库的资源,因为应用程序资源将被优先处理而不是库。

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