Python社区  »  Python

Python实现gradle打包和360加固

夜幕降流星雨 • 1 月前 • 29 次点击  
阅读 39

Python实现gradle打包和360加固

安卓项目日渐稳定,遂学了一周的python(小菜鸡一个)。想找个项目,无奈网上的项目都不符合我实用的需求(看不懂...)。刚好最近安卓的项目频繁需要打包,于是就有了今天的找个标题,最后在不懈的努力(百度),只花了50行左右代码就搞定了。 代码写的很菜大家见谅就是发出来交流下,目前还没有实现多渠道分包和自动上传蒲公英或者fir,有需要大家可以自己补上。

准备工作

  1. 配置好gradle环境变量

    • 你的项目app模块中的gradle要配置好打包签名

      android {
          signingConfigs {
              config {
                 //省略部分
              }
          }
           
          buildTypes {
              debug {
                 //省略部分
                 signingConfig signingConfigs.config
              }
            
              release {
                //省略部分
                signingConfig signingConfigs.config
              }
          }
             
      }
      复制代码
    • grale的bin目录加到到系统变量path

    • 打开cmd输入gradle测试是否成功

      image-20210116114437079

  2. 安装python

    • 安装python3.x.x版本
    • 选一个你喜欢的编辑器

脚本代码

  • 具体实现看代码,如有不行大家见谅(语言能力不行啊),主要的流程就是先利用gradle打包后用360加固

  • 360加固打包命令官方地址大家有需要可以看看

  • gradle命令代码里有大家可以百度

  • 成功截图

    image-20210116120054883

import os
import argparse

# 加固路径
jgPath = 'D:\\360jiagubao_windows\jiagu\\' #改成你的3650加固文件夹地址
output_path = 'C:\\Users\\Desktop' #改成你要输出的目录

# 获取命令行的参数
parse = argparse.ArgumentParser(description='请输入android项目全路径')
parse.add_argument('input', type=str, help='需要自动化的项目路径地址')
args = parse.parse_args()
input_path = args.input


# 查找当前目录apk文件
def get_apk_path(path):
    dirs = os.listdir(path)
    for f in dirs:
        print('遍历文件:', f)
        if f.endswith('.apk'):
            return f
    return None


# 启动加固
def auto_360_jg():
    print('开始编译文件')
    # 进入项目地址
    os.chdir(input_path)
    # 执行编译命令
    r = os.system('gradle assembleRelease')
    if r == 0:
        # 安装包地址
        build_path = input_path + '\\app\\build\\outputs\\apk\\release'
        apk_path = get_apk_path(build_path)
        if apk_path:
            print('开始加固文件')
            # 进入加固目录
            os.chdir(jgPath)
            # 执行加固命令
            os.system('java -jar jiagu.jar -showconfig')
            cmd = 'java -jar jiagu.jar -jiagu ' + build_path + '\\' + apk_path + ' ' + output_path + ' -autosign'


    

            os.system(cmd)
            print('恭喜,加固apk放置到桌面')
        else:
            print('哦哦,没有找到apk文件')
    else:
        print('哦哦,编译apk失败')


if input_path:
    auto_360_jg()
else:
    print('请输入apk地址')

复制代码

运行脚本

  1. 打开cmd

  2. 输入python xxx.py [项目目录]

    例如python test.py D:\AndroidProject\Example

  3. 想用exe可以自行打包

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/106231
 
29 次点击  
分享到微博