我的应用程序将为每个使用它的公司进行一些自定义。到目前为止,我一直在从资源文件中加载图像和字符串。我们的想法是,默认资源将随应用程序一起分发,公司特定资源将在他们点击电子邮件中的链接以启动初始化意图后从我们的服务器加载。有谁知道如何替换资源文件?我真的想继续使用资源文件来避免重写大量的代码/ XML。
我会从我们自己的服务器而不是通过应用程序商店分发应用程序,这样我们每个公司就可以有一个版本,但不幸的是,这会给我们的客户带来非常讨厌的安全警告。
答案 0 :(得分:11)
有谁知道如何更换 资源文件?
除了部署更新的APK之外,这是不可能的。 APK是经过数字签名的,无法在运行时修改。
答案 1 :(得分:7)
不,这是不可能的,但是你可以做的是......在Assets文件夹中复制你的图像等。从assets文件夹中,在Application dir中运行时复制它们..即data / data / yourapppackage / yourresourcefolder
使用运行时文件夹中的图像等。即代码中说..,imageView.setBackgroundDrawable(data/data/apppackagename/download/themename/resourcename)
...
现在,当您从运行时路径下载资源时,请保留一个XML文件,其中包含键名称和图像路径作为键值对。在代码中为此指定Enums并在运行时将图像路径存储在HashMap中。