当前,我将资源文件存储在本地目录中,并通过以下方式调用它们:
Resources res = getResources();
final String[] docukrz = res.getStringArray(R.array.docukrz);
我想将其在线移动,因此我创建了一个网址:https://example/strings.xml
现在如何获取该文件,以便从URL而不是资源文件夹中调用它。
我是一个完全的初学者,阅读了很多不同的文章和教程,但无法综合考虑。抱歉,如果重复的话。
答案 0 :(得分:3)
那不是资源的工作方式。资源框架围绕本地存储,一组特定的目录和“限定符”以及运行时确定应从应用程序中获取哪些资源而构建。
欢迎您从互联网上下载xml文件并进行解析,但这绝不会成为您应用程序资源的一部分。
答案 1 :(得分:1)
我建议您使用Retrofit
和Kripton
(我是该库的作者)库从URL下载XML文件并将其转换为Java对象。
Kripton的wiki page试图解释如何做:您需要使用XMLParser而不是JSON解析器:
// create retrofit using Kripton converter factory
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(“https://jsonplaceholder.typicode.com/")
.addConverterFactory(KriptonBinderConverterFactory.create(BinderType.XML))
.build();
JsonPlaceHolderService service = Retrofit.create(JsonPlaceHolderService.class);
// consume service
Response<List<Post>> response = service.getAllPost().execute();
有关翻新和Kripton持久性库的更多信息:
如果您想使用Retrofit和Kripton Persistence Library来查看工作示例,可以在GitHub上看到我的示例应用RSS阅读器。