【问题标题】:Android: Modify xml from resource and assetAndroid:从资源和资产修改xml
【发布时间】:2014-02-26 17:53:44
【问题描述】:

当我从几个网站阅读时,编辑存储在 res/ 文件夹中的 xml 不可能

但我确实需要修改 res/ 文件夹中的 xml,例如我在 res/xml/ 中有 myxml.xml

如果无法编辑,有什么办法可以修改吗?

这样可以吗:

  1. 删除 res/xml/myxml.xml,然后复制从资产文件夹中新建一个?
  2. 重命名 res/xml/myxml.xml 到 myxml.xml.old 然后制作一个新的?

在assets文件夹中编辑xml文件怎么样?这可能吗?

逻辑:

有一个应用程序可以从 res/xml/ 读取 myxml.xml,而不是拥有 2 个具有不同偏好的不同 apk。 I just want to merge them to one and make an option, when the option is save off course it will need to modify myxml.xml inside res/xml/

详情

其实myxml.xml里面保存了一些偏好,偏好是

<iconmask img1="iconmask" />

<scale factor="0.75" />

我只是想编辑图标掩码和比例因子值

【问题讨论】:

  • 也许如果你解释了为什么你认为你需要这样做,有人可以提供一个替代解决方案。但简短的回答是否定的,你不能。
  • 在运行时还是在编写应用程序时?
  • 在编写应用程序时绝对可以在 res/ 文件夹中编辑 xml 文件,因为这是您保存布局、strings.xml 等的地方。如果您想在运行时执行此操作,那就是另一个问题,但我不确定您为什么需要这样做。
  • 我需要在运行时这样做,我知道这是不可能的,只是问有没有其他选择
  • 这个 xml 和应用程序中的首选项是否与您尝试开发的应用程序不同?

标签: android xml assets


【解决方案1】:

您无需在resassets 文件夹中进行编辑。这将是一项非常艰巨的工作,并且可能不适用于所有设备系统,因为我认为您需要更改文件权限并直接使用文件系统命令进行操作。

此外,一旦您决定更新应用,这些更改将被覆盖!!

我宁愿建议您更改您的逻辑 - 在应用安装时复制内部应用存储中的默认 xml。从那时起使用这个 xml。在那里你可以随时修改。也可以参考位于那里的文件。

【讨论】:

  • 这很难解释,但很快,有一个应用程序可以从 res/xml/ 读取 myxml.xml,而不是拥有 2 个具有不同偏好的不同 apk。 I just want to merge them to one and make an option, when the option is save off course it will need to modify myxml.xml inside res/xml/
  • @你能控制这个应用吗?如果您有代码,则更改应用程序以读取内部存储 xml 而不是更改 res 文件要容易得多。您也可以同时发送两个 res 文件并切换偏好设置,只需更改所用文件的名称
  • 我知道,但遗憾的是我无法控制这个应用程序
  • 所以问题是影响另一个应用程序的资源。我发现这种不良行为
  • 你能提供更多细节吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-10
  • 1970-01-01
  • 2020-08-29
相关资源
最近更新 更多