我开发了一个分发给不同客户端的应用程序。问题是只有我使用的图像和其他资源是不同的。我目前正在做的是,替换特定于客户端的资源(图像和文本)并构建 apk。
有没有一种方法可以为每个客户端单独存储所有资源并创建构建脚本或其他内容,以便我可以在构建过程中选择特定于我生成 apk 的客户端的资源?
最佳答案
你可以用这样的脚本来做到这一点:
#!/bin/bash
ant clean
CUSTOMER_DIR="./default-customer"
if [[ -e ${CUSTOMER} ]]; then
CUSTOMER_DIR="./${CUSTOMER}"
fi
rm -R ./res/drawables/
mkdir ./res/drawables/
cp ${CUSTOMER_DIR}/drawables/* ./res/drawables/
ant release
如果你像这样运行它:
./build.sh
来自 default-customer/drawables/
目录的可绘制对象将被复制到 res/drawables
。
如果你像这样运行它:
CUSTOMER=client1 ./build.sh
client1/drawables/
目录中的drawables将被放置在res/drawables
中。
关于Android 在构建 apk 时选择资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22380855/