0

使用 Android 库时,如果多个项目(主项目或库)定义了相同的资源,则使用优先级较高的项目的副本并替换前一个项目。

这是编写可重用库时的一个问题,因为它强制您为每个资源名称添加前缀以避免冲突。有关该主题的更多信息,请参阅Android Parcel 项目

现在我想做的是一个脚本,在编译之前,它会在所有库中的每个资源的名称前面加上它们的包名称。为此,我打算使用生成的 ant 构建脚本并向其添加自定义步骤。

你知道这是否可能吗?您是否看到解决此问题的更好解决方案?

4

1 回答 1

1

你知道这是否可能吗?

如果您有库的源代码,我想您可以这样做。我怀疑,您动态引用资源 ID 的任何地方(反射getIdentifier()等)都必须手动调整。鉴于您修改了他们的代码,您可能无法从库作者那里获得帮助。

我还将努力说服图书馆作者在其图书馆的未来版本中添加资源前缀。

于 2011-08-07T10:54:27.610 回答