注意:需要使用安裝python3
加固包生成流程
- 使用gradlew assembleRelease生成 build/outputs/apk/release/DDMobileApp-release.apk
- 上傳release包到aws(這一步是為了生成一個(gè)url給樂(lè)固下載待加固的apk尿贫,也可以使用其它方法)
- 使用樂(lè)固api創(chuàng)建加固任務(wù)
- 輪詢(xún)加固狀態(tài)
- 下載加固后的apk
- 重新簽名并生成渠道包
主流程代碼
def main(build_release):
if build_release != "not_build_release":
assemble_release()
upload_apk_to_aws()
shield_resp = create_shield()
has_item_id = "ItemId" in shield_resp["Response"]
if not has_item_id:
error_exit("error: ItemId not found")
return
item_id = shield_resp["Response"]["ItemId"]
time.sleep(10)
apk_download_url = query_download_url(item_id)
download_file(apk_download_url)
bash("清理命令")
# 運(yùn)行渠道包腳本
bash("替換成渠道包腳本"))
運(yùn)行:python3 BuildReleaseWithLegu.py build_release
完整源碼:https://github.com/qhyuan/toolkit/blob/master/scripts/BuildReleaseWithLegu.py