# channel-apptools **Repository Path**: rundev/channel-apptools ## Basic Information - **Project Name**: channel-apptools - **Description**: https://github.com/wubo/apptools - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-10-31 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Android多渠道打包工具 ======== 支持跨平台、命令行、多渠道、平均6秒打一个包 1. 多种打包方式 ======== 添加assets打包方式 解决360等加固不能再打包问题
使用java -cp命令可选择打包方式
java -cp apptools.jar com.leo.app.Main(AndroidManifest打包方式)
java -cp apptools.jar com.leo.app.CMain(assets打包方式)
java -jar apptools.jar 默认assets打包方式 2. 环境要求 ======== 3.打包流程 ======== 1.设置当前process 的环境变量,保证 apktool 可以正常工作
2.执行 apktool d --no-src -f xxxx.apk temp 拆解apk
3.替换 AndroidManifest.xml 中的 channelFlag字符为指定渠道
4.执行 apktool b temp unsigned.apk 重新打包apk
5.执行 jarsigner 生成签名后的 apk 文件
6.执行 zipAlign 生成对齐优化后的 apk 文件
7.回到 3 替换新的渠道
8.完成打包
4.工程目录结构 ======== 源码:
> ├apktool
>   ├src
>   ├bin
>   ├.classpath
>   ├.project
>   ├linux
>   ├macosx
>   ├windows
>   ├map.properties
命令行:
> ├pro java -jar apptools.jar
>   ├apptools.jar
>   ├linux
>   ├macosx
>   ├windows
>   ├map.properties
5.使用教程 ======== 1.配置map.properties
2.更改自己要打包项目的AndroidManifest.xml(可参考apps demo)中的渠道号字符替换为map.properties中配置的channelFlag 指定字符 打好包后放到map.properties配置的指定路径
3.执行命令行:java -jar apptools.jar 或者 java -jar apptools.jar google,baidu,yyh
6.注意事项 ======== 1.如果您的电脑以前使用过apktool工具请删除工具生成老的framework.jar 路径(windows平台): c:\Documents and Settings\%current user%\apktool\framework\* 2.请尽量避免java与android环境变量存在空格 3.不支持jar包中包含有资源文件的apk项目,受apktool工具本身功能限制(如有jar包源码,可尝试把源码建立成Android项目,把资源放进assets以Android方式加载打包成jar. android模式的jar中有assets资源,打包时会自动把assets合并进项目) 4.如出现aapt命令问题,请解决环境变量入径问题 如:Android SDK Tools 版本为22时需在Android SDK Manager中安装Android SDK Build-tools 然后添加路径%ANDROID_SDK_HOME%\build-tools\17.0.0;到Path