1.用戶權限配置 修改AndroidManifest.xml
配置相應的權限 如
<uses-permission android:name="android.permission.INTERNET"/>
2. 應用程序簽名
2.1.創(chuàng)建一個秘鑰庫
在 macOS 或者 Linux 系統(tǒng)上,執(zhí)行下面的命令,不用修改
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
如果出現(xiàn)如下錯誤
No Java runtime present, requesting install.
需要安裝java SDK或者使用
/Applications/Android\ Studio.app/Contents/jre/jdk/Contents/Home/bin/keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
之后是輸入各種口令,密碼(如123456)、姓名、國家等

截屏2021-01-14 下午4.17.02.png
2.2.在APP中引用秘鑰庫
在Android的根目錄下創(chuàng)建 一個名為key.properties的文件,它包含了秘鑰庫位置的定義:
storePassword = 上一步中的密碼 如123456
keyPassword = 上一步中的密碼 如123456
keyAlias = key
storeFile = 秘鑰庫的位置 e.g /Users/Ray/key.jks
注意:這個文件一般不提交到代碼倉庫,可以修改.gitignore文件
/android/key.properties
2.3在gradle中配置簽名
通過編輯/android/app/build.gradle文件來為我們的APP配置簽名:
- 找到 android 代碼塊
addroid {
...
}
在此代碼塊上方添加
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
2 把 buildTypes 代碼塊注釋,后添加
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
3 .打包應用程序,終端運行
生成 apk文件
flutter build apk
AAB文件(谷歌推薦)
flutter build appbundle