使用ANT自動發布Android APK

來源:互聯網
上載者:User

當發布APK是一種負擔時,必需要進入自動化模式了。

本文使用ANT來編譯,並簽名,對齊,發布。

1 下載sun-java6-jdk

參考這裡來下載。

export JAVA_HOME=/usr/lib/jvm/java-6-sun

 

2 為已存在的項目產生ant的build.xml

運行命令列到當前項目根目錄下,運行如下命令:

android update project --path .

可以使用ant命令查看相關資訊和協助,如下:

$ ant $ ant debug

需要Proguard的同學把AndroidManifest.xml中的debuggable關掉(查資料時發現中外差距太大,老外一句話解決的事情,中文版要長篇大論還搞不定)。

3 出貨!出貨!指令碼:

#!/bin/bashAPP_NAME="StandardLauncher"CD="."RELEASE_APP=$CD/bin/$APP_NAME-release-signed.apkRELEASE_DIR=~/released_apks/standardLauncherPWD="xxx"#ant releaseecho "Sign apk..."cp $CD/bin/$APP_NAME-release-unsigned.apk $RELEASE_APP"$JAVA_BIN/jarsigner" -keystore "my-release-key.keystore" -storepass $PWD -keypass $PWD $RELEASE_APP "my-release-key"echo "Verigy apk...""$JAVA_BIN/jarsigner" -verify $RELEASE_APPversionName=$(aapt d badging $RELEASE_APP |grep versionName= | cut -d "=" -f4 | cut -d "'" -f2)echo "Get versionName = $versionName"echo "zipalign apk..."zipalign -f 4 $RELEASE_APP "$RELEASE_APP"_alignedcp "$RELEASE_APP"_aligned $RELEASE_DIR/"$APP_NAME"_V"$versionName"_build_$(date +%Y%m%d).apkecho "Clean up..."rm -v $RELEASE_APPrm -v "$RELEASE_APP"_alignedcd $RELEASE_DIR$RELEASE_DIR/cleanup.sh

PS 中間擷取version name的命令需要改進。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.