Android strings.xml 配置 Brand 、Ta

2018-12-24  本文已影响0人  _发强

前言

前段时间由于配置多渠道打包,需要配置 strings.xml 中的 Brand(AppName,WebSite等)相关字眼,每次配置渠道包都需要去改这些信息。每次搜索替换的时候都是小心翼翼的,生怕替换了其他渠道的内容。

原始写法 strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">Demo</string>
    <string name="str_login">登录</string>
    <string name="str_register">注册</string>
    <string name="str_about">关于 Demo 相关介绍</string>
    <string name="str_tips">温馨提示:\n 请仔细阅读 Demo 的使用说明</string>
    <string name="str_webSite">官网地址: www.baidu.com/ </string>
</resources>

这种情况下,如果配置多渠道,需要修改 [Demo]、[www.baidu.com] 等字眼,那我们基础一点的做法肯定都是 copy 一份 strings.xml 到对应 channel 目录下,去 command+R在当前文件进行搜索替换。渠道固定就那么几个的话,这种其实也可以接收。那如果渠道不确定,时不时的增加一个,那你就难受了。所以当时在想 strings.xml 该怎么去抽离相关配置文本。然后就整理了下面的配置写法。

配置写法 strings.xml

<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE resources[
    <!ENTITY brandName "Demo">
    <!ENTITY brandWebSite "atc.bitsaas.tech">
    ]>

<resources>
    <string name="app_name">&brandName;</string>
    <string name="str_login">登录</string>
    <string name="str_register">注册</string>
    <string name="str_about">关于 &brandName; 相关介绍</string>
    <string name="str_tips">温馨提示:\n 请仔细阅读 &brandName; 的使用说明</string>
    <string name="str_webSite">官网地址: &brandWebSite;/ </string>
</resources>

语法格式:

<!DOCTYPE [1][
  <!ENTITY [2] "[3]">
]>

使用方式:

使用  &[属性名称];  替换文本
上一篇 下一篇

猜你喜欢

热点阅读