首页 > 编程语言 >python 脚本实现bugly自动上传符号文件

python 脚本实现bugly自动上传符号文件

时间:2022-10-19 10:13:36浏览次数:70  
标签:文件 符号 python upload version 上传 bugly

bugly更新之后,符号文件不再支持拖拽或者选择文件的方式上传了,官方提供了一个上传的工具包,通过buglyqq-upload-symbol.jar实现上传,每次上架app都需要手动去配置相关参数和组装对应的命令行,操作起来有点麻烦,于是使用python写了个简单的脚本,每次只需要把dsym拖拽到指定文件夹 执行python upload.py -v 1.0.0上传即可
具体操作步骤如下:
1.打开官网下载上传工具包 https://bugly.qq.com/v2/downloads,符号表工具 '3.3.4'
2.解压工具包打开使用说明我们发现整个上传过程就只有一个命令 只需要配置相关参数即可

java -jar buglyqq-upload-symbol.jar -appid <APP ID> 
                                    -appkey<APP KEY>
                                    -bundleid <App BundleID>
                                    -version <App Version>
                                    -platform <App Platform>
                                    -inputSymbol <Original Symbol File Path>
                                    -inputMapping <mapping file>

3.编写python脚本,并放在下载的java工具包解压目录,把对应的参数配置齐全,利用 subprocess.Popen来执行命令行

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import argparse
import subprocess

APP_ID = '4cc41ee999'
APP_KEY = 'a32d0dea-afe4-4904-9dcd-0231213443232'
VERSION = ''
BUNDLE_ID = 'com.xxxxx.xx'
PLATFORM = 'IOS'
INPORT_SYMBOL = '符号名称.app.dSYM'


def archive_upload():
    cmd = 'java -jar ../buglyqq-upload-symbol.jar -appid %s -appkey %s -bundleid %s -version %s -platform %s -inputSymbol %s' % (
        APP_ID, APP_KEY, BUNDLE_ID, VERSION, PLATFORM, INPORT_SYMBOL)
    print('开始上传符号文件...')
    process = subprocess.Popen(cmd, shell=True)
    process.wait()
    if process.returncode == 0:
        print('符号文件上传成功')
    else:
        print(f'符号文件上传失败')


def prase_args(options):
    global VERSION
    if options.version:
        VERSION = options.version
        archive_upload()
    else:
        print('请输入版本号')


if __name__ == "__main__":

    parser = argparse.ArgumentParser('bugly符号文件上传脚本')

    parser.add_argument(
        "-v", "--version", help="该选项用来配置上传的符号文件版本号",
        metavar="1.0.0")
    options = parser.parse_args()
    prase_args(options)

4.在XCode中找到对应的符号文件: 符号名称.app.dSYM ,并把该文件复制到脚本同级目录
5.执行python命令输入上传的符号文件版本号

/// 可以通过-h命令来查看支持的功能
python upload.py -h
usage: bugly符号文件上传脚本 [-h] [-v 1.0.0]

optional arguments:
  -h, --help            show this help message and exit
  -v 1.0.0, --version 1.0.0
                        该选项用来配置上传的符号文件版本号

/// 执行脚本发起上传 等待上传结束
python upload.py -v 1.0.0

标签:文件,符号,python,upload,version,上传,bugly
From: https://www.cnblogs.com/qqcc1388/p/16805247.html

相关文章

  • el-upload多文件上传组件封装
    文件多次上传,保留进度条<template><divclass="upload-file"><el-upload:action="uploadFileUrl":on-success="handleUploadSuccess"......
  • python当中map,reduce和filter函数用法和区别
    在python当中,关于map,reduce和filter函数用法。map:对任何可迭代序列中的每一个元素应用对应的函数。python3中返回的是迭代器。reduce:将序列中所有的元素进行合并运算......
  • python封装
    这种变形的特点:1,在类外部无法直接obj.__AttrName2,在类内部可以直接使用:obj.__AttrName3,子类无法覆盖父类__开头的属性0,classA:'类的封装啊'__x=1......
  • python类中的数据问题
    问题:1.)上面的__init__函数中,加*句我不写,为啥不可以?不理解里面怎么传递。。。初始化的时候不是先在内部调用了__init__,生成了L了吗?下面函数不能用这里的L,甚至是a,b这些变......
  • Selenium+Python系列 - 开发环境搭建
    一、写在前面我从未想过自己会写python系列的自动化文章,有些同学会问,那你现在为什么又开始写了?不止一个人找过我,问我可以写一些Python自动化的文章吗,答案是肯定的。笔......
  • Github上把敏感文件或者API秘钥上传公共库并开放为public权限导致秘钥泄露
    Github上把敏感文件或者API秘钥上传公共库并开放为public权限导致秘钥泄露背景我们在开发项目时,可能会使用到一些加密文件,例如私钥,或者使用到一些云服务商提供的ak(Acce......
  • 如何 让自己代码上传到gitee上
    1gitee上创建仓库2在本地代码根路径下执行git的binbash窗口3gitadd.gitcommit-m""4绑定远程仓库[email protected]:michaelli......
  • Python 操作Excel-openpyxl模块使用
    openpyxl的用法实例1.1Openpyxl库的安装使用openpyxl模块是一个读写Excel2010文档的Python库,如果要处理更早格式的Excel文档,需要用到额外的库,openpyxl是一......
  • 学习python-Day76
    今日学习内容一、虚拟机关键配置名词解释1.虚拟网络编辑器说明桥接模式​ 配置的地址信息和物理主机地址信息相同,容易造成地址冲突NAT模式​ 配置的地址信息和物......
  • Python OpenCV4趣味应用系列(一)---伪彩色效果
    工欲善其事,必先利其器!起航之前先把环境搭建好:第一步:安装Python,官网下载,选个python3.x(自己喜欢的版本),同时将Python相关目录添加到环境变量;第二步:安装python-opencv,cmd命令......