2012-07-27 73 views
0

我正在构建一个开发人员工具SDK作为Android库项目。我希望主机应用程序开发人员不使用代码配置我的SDK,而是使用XML文件。我研究了在清单中放置一些配置字符串,但这并不安全。所以我想让主机开发人员在主机应用程序中定义一些字符串。麻烦的是,我的库项目似乎没有看到主机应用程序中定义的字符串。在编译期间,我无法引用在我的库项目中定义的主机项目中的资源ID,即使它们合并在一起并卡在相同的DEX中。来自Android库项目的参考主机项目字符串

有什么方法可以从库项目中读取主机项目中定义的资源?

+0

我刚刚了解你。 [这个答案](http://stackoverflow.com/a/3441986/1521536)将以相反的方式帮助你。我的意思是你不应该这样做(你的方式)与图书馆项目。主项目应该为图书馆项目提供所有东西。库项目不应与主机项目交互。 – 2012-07-30 17:37:51

回答

0

好的,它看起来像你可以在你的图书馆项目和你的主机应用程序项目中定义一个同名的资源。这将允许编译继续,并且宿主应用程序资源将覆盖库项目资源。

+0

存在与您的问题相关的[问题](http://code.google.com/p/android/issues/detail?id=30622)。 – 2012-07-28 16:26:04

+0

有趣。它看起来像选择哪个布局文件是随机的。另一种传递数据的方式是将其定义为AndroidManifest.xml中的元数据,这就是我将要做的。 – 2012-07-30 16:19:45