访问库中的strings.xml值

时间:2014-01-11 01:30:07

标签: android r.java-file

我为我的Android应用程序编写了一个网络库,我希望能够访问我在该库中的strings.xml文件中定义的url值。问题是该库不是活动或片段或类似的东西,因此它无法访问正常的上下文或其他一流的Android公民获取的东西。有没有办法让我在没有Context的情况下访问该值(或者在Activity和Fragments的函数调用期间没有传入一个)?

我知道我可以轻松访问R类,但所有这些都是字节偏移 - 我需要getString()方法将该偏移转换为有意义的内容,除非我想做很多在原始字节的土地上玩耍(我想避免)。

谢谢!

1 个答案:

答案 0 :(得分:1)

不,没有,并且手动解析低级数据绝对不是解决方案。资源的整个点将被根据检索到Context资格(因此是强大的限定符系统),这就是我在你刚问的另一个问题中提出这个建议的原因。 : - )

除非您提供方法(例如,方法参数),否则您将无法检索资源。它应该重新考虑您的库的架构:为什么您需要URI 合格?如果您在图书馆,客户端应用程序将拥有自己的上下文,并可以安全地向您的库提供一个,从而检索资源。如果那不是重点(即,在代码中访问URI),那么你不应该使用资源,而是使用最终的静态变量,就像我建议的那样。

在处理URI时,有一些情况可以让你从限定符功能中受益,但正如我所说,如果你只在你的库上使用,你可能需要在代码中定义一个变量。