由於官網被牆,打包資料只能根據以往大神提供的經驗摸索打包,但是在實際打包中還是會遇到各種各樣的錯。
下面介紹一下我成功打包的經驗,像是配置檢視構建配置和新增啟動圖示之類的就不說了,只講打包。
1.建立Key
確認已安裝java和flutter。我的java安裝在D:\\Program Files\\java\\jre\\bin,首先進入到這個資料夾內,否則你建立key時,會提示'keytool' 不是內部或外部命令,也不是可執行的程式或批處理檔案。如果已有key,跳過此步驟,沒有的,執行下面命令
keytool -genkey -v -keystore D:/key/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
-genkey 生成祕鑰-alias 別名-keyalg 祕鑰演算法-keysize 祕鑰長度-validity 有效期-keystore 生成祕鑰庫的儲存路徑和名稱2.填寫金鑰內容
出現下圖即為建立成功
檢視證書
3.建立key.properties
在android目錄下建立一個key.properties檔案 輸入以下程式碼,儲存一下。
storePassword= 剛剛建立金鑰庫時的密碼keyPassword= 剛剛建立金鑰的密碼keyAlias=keystoreFile=D:/key/key.jks
4.build.gradle檔案修改
上圖三個地方需要修改
1.在android前加入
def keystorePropertiesFile = rootProject.file("key.properties")def keystoreProperties = new Properties()keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
2.android裡面加入
signingConfigs { release { keyAlias "key" keyPassword "剛剛建立金鑰庫時的密碼" storeFile file("D:/key/key.jks") storePassword "剛剛建立金鑰庫時的密碼" } }
3.android裡面修改buildTypes
buildTypes { release { signingConfig signingConfigs.release minifyEnabled true useProguard true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } }
這裡面有個坑,signingConfigs這裡面配置我按照教程寫法,死活打包不成功。一直報這個錯
5.打包
我們的apk檔案儲存在Flutter資料夾的build\\app\\outputs\\apk\\release\\app-release.apk 目錄下。
最新評論