1.APP需要集成Walle三方库
注:只需要集成com.meituan.android.walle:library:1.1.7
2.下载命令行工具walle-cli-all.jar
3.配置渠道(新建一个config.txt),每个渠道占一行
channel1
channel2
channel3
channel4
channel5
channel6
channel7
channel8
channel9
channel10
4.编写批处理bat文件,如"多渠道批处理.bat"(运行显示乱码的话需要另存为ANSI编码)
::双冒号表示注释(setlocal enabledelayedexpansion是延迟变量赋值使用)
@echo off&setlocal enabledelayedexpansion
::先删除文件夹,再创建文件夹
for %%i in (*.apk) do (
::~ni 表示无后缀文件名
if exist %~dp0\%%~ni (
echo %%~ni文件夹已存在,执行清空
del /q /s %~dp0\%%~ni
) else (
echo %%~ni文件夹不存在,执行创建
md %~dp0\%%~ni
)
)
::找到当前目录下所有apk文件
for %%i in (*.apk) do (
::读取当前所有渠道
for /f "tokens=*" %%j in (config.txt) do (
echo 创建渠道:%%~ni_%%j.apk
::~fi表示文件全路径
java -jar walle-cli-all.jar put -c %%j %%~fi %~dp0\%%~ni\%%~ni_%%j.apk
)
)
pause
5.打包APK,将【APK】+【config.txt】+【walle-cli-all.jar】+【多渠道批处理.bat】放到一个文件夹下
image.png6.确保Windows已安装java环境,没有的话自己百度配置,运行"多渠道批处理.bat"即可批量生产对应渠道的APK
image.png7.新增渠道对应键值对
config.txt修改如下
channel1_Baidu
channel2_HuaWei
channel3_Tencent
多渠道批处理.bat修改如下:(count_key是键值对的Key)
::设置编码方式(65001 UTF-8;936 GBK;437 英语)
chcp 65001
::双冒号表示注释(setlocal enabledelayedexpansion是延迟变量赋值使用)
@echo off&setlocal enabledelayedexpansion
echo ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆==Start==☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
echo=
::先删除文件夹,再创建文件夹
for %%i in (*.apk) do (
::~ni 表示无后缀文件名
if exist %~dp0\%%~ni (
echo %%~ni文件夹已存在,执行清空
echo=
del /q /s %~dp0\%%~ni
echo=
) else (
echo %%~ni文件夹不存在,执行创建
echo=
md %~dp0\%%~ni
echo=
)
)
::找到当前目录下所有apk文件
for %%i in (*.apk) do (
::读取当前所有渠道
for /f "tokens=1,* delims=_" %%a in (config.txt) do (
set channel=%%a
::去除TAB
set channel=!channel: =!
if not "!channel!"=="" (
::去除空格
set channel=!channel: =!
if not "!channel!"=="" (
set key=%%b
::去除TAB
set key=!key: =!
if not "!key!"=="" (
::去除空格
set key=!key: =!
if not "!key!"=="" (
echo 创建渠道:%%~ni_!channel!_!key!.apk
echo=
::~fi表示文件全路径
java -jar walle-cli-all.jar put -c !channel! -e count_key=!key! %%~fi %~dp0\%%~ni\%%~ni_!channel!.apk
)
)
)
)
)
)
echo ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆==End==☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
pause
批处理后读取如下:
image.png
网友评论