Flutter打包apk(Gradle配置打包)
本次所記錄的打包流程全部都是在Android Studio上完成的担败。
一府寒、生成簽名文件
Android在打包之前需要一個簽名文件茵乱。
eclipse的簽名文件是以.ketstore為后綴的文件睁枕;Android Studio是以.jks為后綴的文件挎塌。
這里我們用命令行生成一個.jks的文件忌栅。我們使用的是Android Studio自帶的debug.keystore密鑰庫车酣。
//生成sign.jks
keytool -genkey -v -keystore ~/sign.jks -keyalg RSA -keysize 2048 -validity 10000 -alias sign
-----------------------------生成文件路徑--------------------------------------------------別名--
//查看證書SHA1
keytool -list -v -keystore sign.jks -alias sign -storepass android -keypass 123456
---------------------------文件路徑----------別名-----------秘鑰庫密碼---------sign文件密碼--
//-keystore sign.jks
//-alias sign
//-storepass android
//-keypass 123456
以下是我的終端執(zhí)行過程:
二、Android Studio文件配置
1索绪、導入sign.jks
在Flutter工程中/android/app/key/sign.jks創(chuàng)建該目錄湖员。要在app目錄下創(chuàng)建key文件夾,然后把sign.jks拖進來瑞驱。
2娘摔、創(chuàng)建key.properties
在Flutter工程中/android/key.properties創(chuàng)建該文件。里面內容如下:
storePassword=android
keyPassword=123456
keyAlias=sign
storeFile=key/sign.jks
3唤反、配置/android/app/build.gradle文件
打包新加的配置如下凳寺,可以參照對比:
def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
android {
signingConfigs {
release {
keyAlias 'sign'
keyPassword 'android'
storeFile file('key/sign.jks')
storePassword 'android'
}
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.release
}
}
}
以下是我的工程目錄配置:
三、Flutter打包apk
從終端進入flutter工程目錄拴袭,運行以下命令自動生成apk读第,生成apk路徑為:xxFlutterProject/build/app/outputs/apk/xx.apk
xxFlutterProject$ flutter build apk
四、Mac上給Android手機安裝apk
1拥刻、Mac軟件:Android文件傳輸下載地址
2怜瞒、一臺Android手機
3、一條數(shù)據(jù)線
剩下的步驟就是手機連接Mac了,然后把剛才的apk拖入手機某一個文件夾下吴汪,最好是好找一點惠窄。從Mac上傳輸完畢后,就在Android手機文件管理系統(tǒng)中找到該apk漾橙,點擊安裝杆融。