AndroidStudio中Flutter打包APK
生活随笔
收集整理的這篇文章主要介紹了
AndroidStudio中Flutter打包APK
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、生成簽名文件
在打包之前我們需要一個簽名文件,證明文件的唯一性。
keytool?-genkey?-v?-keystore?F:\APP\sign.jks?-keyalg?RSA?-keysize?2048?-validity?10000?-alias?signF:\APP\sign.jks為簽名問價存放目錄,sign 為密鑰名。
后面都有用,請牢記。
在控制臺輸入上方指令后,會依次讓你輸入密鑰庫口令、姓氏、組織機構等等,下方是我的截圖:
查看證書SHA1:
keytool?-list?-v?-keystore?F:\APP\sign.jks?-alias?sign?-storepass?123456?-keypass?123456其中 sign、storepass、keypass 分別為: 別名、密鑰庫密碼、 sign文件密碼
2、Android Studio 配置
2.1、導入sign.jks
在Flutter工程中/android/app/key/sign.jks創建該目錄。
要在app目錄下創建key文件夾,然后把sign.jks拖進來。
如圖所示:
2.2、創建key.properites
在Flutter工程中/android/key.properites創建該文件。
里面內容如下:
2.3、配置/android/app/build.gradle文件
需要修改 app 包下的 build.gradle 文件,增加如下配置:
android?{signingConfigs?{release?{keyAlias?'sign'keyPassword?'android'storeFile?file('key/sign.jks')storePassword?'android'}}buildTypes?{release?{signingConfig?signingConfigs.release}} }完整的代碼:
def?localProperties?=?new?Properties() def?localPropertiesFile?=?rootProject.file('local.properties') if?(localPropertiesFile.exists())?{localPropertiesFile.withReader('UTF-8')?{?reader?->localProperties.load(reader)} }def?flutterRoot?=?localProperties.getProperty('flutter.sdk') if?(flutterRoot?==?null)?{throw?new?GradleException("Flutter?SDK?not?found.?Define?location?with?flutter.sdk?in?the?local.properties?file.") }def?flutterVersionCode?=?localProperties.getProperty('flutter.versionCode') if?(flutterVersionCode?==?null)?{flutterVersionCode?=?'1' }def?flutterVersionName?=?localProperties.getProperty('flutter.versionName') if?(flutterVersionName?==?null)?{flutterVersionName?=?'1.0' }apply?plugin:?'com.android.application' apply?from:?"$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"android?{compileSdkVersion?28lintOptions?{disable?'InvalidPackage'}defaultConfig?{applicationId?"sscai.club.flutter_shop"minSdkVersion?16targetSdkVersion?28versionCode?flutterVersionCode.toInteger()versionName?flutterVersionNametestInstrumentationRunner?"android.support.test.runner.AndroidJUnitRunner"}/*針對打包新加的*/signingConfigs?{release?{keyAlias?'sign'keyPassword?'123456'storeFile?file('key/sign.jks')storePassword?'123456'}}/*針對打包新加的*/buildTypes?{release?{signingConfig?signingConfigs.release}} }flutter?{source?'../..' }dependencies?{testImplementation?'junit:junit:4.12'androidTestImplementation?'com.android.support.test:runner:1.0.2'androidTestImplementation?'com.android.support.test.espresso:espresso-core:3.0.2' }項目目錄:
3、打包APK
在當前項目目錄的終端中執行:flutter build apk
或者直接在 Android Studio 的 Terinal 執行命令:
生成的目錄:當前項目\build\app\outputs\apk\release\xx.apk
總結
以上是生活随笔為你收集整理的AndroidStudio中Flutter打包APK的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Nginx upstream 配置
- 下一篇: [译] MDC-103 Flutter: