1.用户权限配置 修改AndroidManifest.xml
配置相应的权限 如
<uses-permission android:name="android.permission.INTERNET"/>
2. 应用程序签名
2.1.创建一个秘钥库
在 macOS 或者 Linux 系统上,执行下面的命令,不用修改
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
如果出现如下错误
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)、姓名、国家等
2.2.在APP中引用秘钥库
在Android的根目录下创建 一个名为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