1. 程式人生 > >自動化瓦力多渠道打包python腳本

自動化瓦力多渠道打包python腳本

代碼 aligned ng2 目錄介紹 ase licensed images include www

自動化瓦力多渠道打包python腳本

目錄介紹

  • 1.本庫優勢亮點
  • 2.使用介紹
  • 3.註意要點
  • 4.效果展示
  • 5.其他介紹

0.首先看看我錄制的案例演示

  • 如下所示,這段python代碼很簡單,工具十分強大,一鍵多渠道打包工具。
    • 技術分享圖片
  • 項目的開源地址:https://github.com/yangchong211/YCWalleHelper

1.本庫優勢亮點

  • 通過該自動化腳本,自需要run一下或者命令行運行腳本即可實現美團瓦力多渠道打包,打包速度很快
  • 配置信息十分簡單,代碼中已經註釋十分詳細。Keystore信息一定要配置,至於渠道apk輸出路徑,文件配置路徑等均有默認路徑,沒有配置也沒關系
  • 針對輸出路徑是根目錄下的output文件夾,文件不存在則創建,文件存在則是先刪除之前多渠道打包生成的【也就是刪除output文件夾下所有文件】,然後在重新生成
  • 多渠道的定義是在channel這個文件中,建議是txt文件格式,你可以根據項目情況修改,十分快捷
  • 如果瓦力打包工具更新了,直接替換一下lib中的jar即可。可以在python3.x上跑起來!
  • 我也參考了大量的博客,網上博客很多,我始終覺得對於這種實操性很強的案例,還是博客和項目一起學習才效果更好。感謝無數的前輩大神!

2.使用介紹

  • 第一步:準備基礎的文件
    • 將你加固好的apk文件,keystore,已經需要多渠道配置信息的channel放到指定的apk文件中
    • 初步建議,如果你想自定義存放文件的路徑,可以先熟悉一下python的代碼再做修改,也沒有什麽難度
  • 第二步:配置Config.py文件中的屬性

    • 配置keystore信息,這個地方引用你的keystore信息
      # keystore信息
      # Windows 下路徑分割線請註意使用\\轉義
      keystorePath = "D:\\GitHub\\YCWalleHelper\\venv\\Include\\apk\\ycPlayer.jks"
      keyAlias = "yc"
      keystorePassword = "19930211"
      keyPassword = "19930211"
    • 配置其他信息,比如apk的名稱,渠道包配置路徑,輸出路徑等等
      
      # 加固後的源文件名(未重簽名)
      # 必須要配置
      protectedSourceApkName = "app_release_aligned_signed.apk"

    下面這些可以不用配置,代碼中會有默認的值

    加固後的源文件所在文件夾路徑(...path),註意結尾不要帶分隔符,默認在此文件夾根目錄

    protectedSourceApkDirPath = ""

    渠道包輸出路徑,默認在此文件夾output目錄下

    channelsOutputFilePath = ""

    渠道名配置文件路徑,默認在此文件夾apk目錄下

    channelFilePath = ""

    額外信息配置文件(絕對路徑)

    配置信息示例參看,默認是此文件夾apk目錄下

    extraChannelFilePath = ""

    Android SDK buidtools path , please use above 25.0+

    必須配置

    sdkBuildToolPath = "D:\Program File\AndroidSdk\build-tools\28.0.3"

  • 第三步:直接運行
    • 第一種方式是通過PyCharm工具運行,這個直接run就可以呢。程序員建議使用這種!
    • 第二種方式是通過命令行運行,就可以實現自動化打包
      python MainWalle.py
  • 第四步:修改多渠道配置信息
    • 直接找到channel文件,進行修改即可,註意格式!
      360 #360
      91anzhuo # 91安卓
      anzhuo # 安卓
      baidu # 百度
      wandoujia # 豌豆莢
      xiaoyangdoubi  #小楊逗比
      yingyongbao # 應用寶

3.註意要點

3.1 註意在apk目錄中一定要放入channel,keystore,還有加固的apk文件

  • channel是指指定多渠道信息
  • keystore是指你要簽名的apk的鑰匙
  • apk是指你需要進行多渠道打包的加固文件。註意apk文件名稱要和Config配置的apk名稱要一致。
    技術分享圖片

3.2 配置keystore信息需要註意的問題

  • 主要是註意路徑是全路徑
    # keystore信息
    # Windows 下路徑分割線請註意使用\\轉義
    keystorePath = "D:\\GitHub\\YCWalleHelper\\venv\\Include\\apk\\ycPlayer.jks"
    keyAlias = "yc"
    keystorePassword = "19930211"
    keyPassword = "19930211"

3.3 註意apk下存放的apk文件名稱和Config.py中配置的apk名稱要相同

  • 看下面這個截圖
    • 技術分享圖片

3.4 關於部分疑問問題

  • 關於Config.py中的sdkBuildToolPath,建議和你使用studio的版本保持一致。別忽略這種小的問題!
  • 註意如果要配置定義路徑等屬性,由於編碼格式為UTF-8,所以不要帶異常字符
  • 多渠道打包時,如果要修改多渠道信息,直接修改channel,這個文件就不要修改成其他的名稱呢!

4.效果展示

  • 如圖所示,建議你親自嘗試一下,特別好玩!
    • 技術分享圖片

5.其他介紹

關於其他內容介紹

技術分享圖片

關於博客匯總鏈接

  • 1.技術博客匯總
  • 2.開源項目匯總
  • 3.生活博客匯總
  • 4.喜馬拉雅音頻匯總
  • 5.其他匯總

其他推薦

  • 博客筆記大匯總【15年10月到至今】,包括Java基礎及深入知識點,Android技術博客,Python學習筆記等等,還包括平時開發中遇到的bug匯總,當然也在工作之余收集了大量的面試題,長期更新維護並且修正,持續完善……開源的文件是markdown格式的!同時也開源了生活博客,從12年起,積累共計47篇[近20萬字],轉載請註明出處,謝謝!
  • 鏈接地址:https://github.com/yangchong211/YCBlogs
  • 如果覺得好,可以star一下,謝謝!當然也歡迎提出建議,萬事起於忽微,量變引起質變!

參考博客

  • https://github.com/Meituan-Dianping/walle
  • https://blog.csdn.net/ruancoder/article/details/51893879
  • https://www.cnblogs.com/morang/p/python-build-android-apk.html
  • https://www.jianshu.com/p/b5b4f7fc5264
  • https://www.jianshu.com/p/20a62d1eba3f
  • https://github.com/Jay-Goo/ProtectedApkResignerForWalle
  • https://blog.csdn.net/u013692888/article/details/77933548

關於LICENSE

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

自動化瓦力多渠道打包python腳本