標籤:
首先要注意一點,Android Studio中把proguard.txt已經命名為proguard-rules.pro,由此可見,採用Gradle打包,混淆規則檔案的名稱是不重要的。能夠自己隨便命名。
混淆規則跟原來一樣。沒有變化。不懂能夠搜一下別人怎麼寫的。
增加簽名檔案。在Build->Generate Signed APK…
就會看到以下的彈出框
假設沒有簽名檔案就建立新的簽名檔案,假設已經有簽名檔案,那麼選擇簽名檔案的位置,並填寫好password就能夠點Next了。
建立簽名檔案的方式跟老版本號碼(Eclipse+ADT)的簽名方式一樣,這裡就不再多說了。
你會發現AS產生的簽名檔案是jks尾碼名的,跟原來的能夠說tore不一樣。其實。簽名檔案也並非受檔案名稱影響。
Next後會彈出以下的框
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >
在Buid Type中預設有兩個選項,故名思議,我們尋經常使用的是debug,正式打包,我們須要用release。選中後點Finish就能夠打包了。可是這樣打包並沒有做代碼混淆。以下我們繼續增加代碼混淆。
選中項目的Open Module Setting,然後我們會看到以下這個框
我們選中app->Signing 點擊+號,新增一般配置,這個配置就是剛剛須要手動輸入和匯入簽名檔案的操作,我們能夠在這個config(能夠隨便命名)填好籤名password和簽名檔案的路徑。
然後我們再點到Build Types選卡
這個就是我們的正式發包的須要配置的內容。其它選預設。須要改兩個地方:Signing Config,選擇我們剛剛設定好的簽名配置;在Proguard File這一欄選中項目中的proguard-rules.pro的絕對路徑,也就是項目根資料夾下的app/proguard-rules.pro,然後點擊ok。
Gradle會自己主動同步改動過的內容。
這個時候我們來看一下app檔案夾下的build.gradle的內容。你會發現跟我們剛才配置的內容是一模一樣的。
以下我能夠打包正式簽名的apk包。
有三種方式:
1. 在Build-> Generate Signed APK… 直接下一步下面一步就能夠打包了;
2. 在AS 提供的終端中輸入gradlew release,或者外部的終端開啟到項目的跟檔案夾再輸入gradlew release。但這個前提是已經在本機安裝了gradle。而且配置了環境變數,不然終端是無法識別這種命令的。
3. 使用AS預設Gradle外掛程式,在我們表單的最右邊能夠找到Gradle(預設是最小化),開啟它並點擊項目名稱再下一層,看到有一個Tasks->build。找到assembleRelease(批量打包)並雙擊,就自己主動打包。
正式簽名包假設沒有更改過檔案夾預設是在app檔案夾下或者是app/build/output/apk檔案夾下,個人比較喜歡放在後面那個檔案夾。
還要注意一點。改動打包的版本號碼資訊,須要在build.gradle中改動以下紅色的內容,跟manifest.xml一樣
defaultConfig {
applicationId ‘com.arjinmc.goddnessplan‘
minSdkVersion 14
targetSdkVersion 22
versionCode 2
versionName ‘0.0.2‘
signingConfig signingConfigs.config
}
Android Studio中使用Gradle打包