Flutter 打包android apk文件
记录下打包的过程
原文链接:https://blog.csdn.net/weixin_44259356/article/details/104919257
证书
进入如下网页,在线生成证书文件
http://www.applicationloader.net/appuploader/keystore.php
将证书文件拷贝到项目:android/app 文件夹下,如下:
创建key.properties文件
在同目录下创建,内容如下
#密钥库口令
storePassword=123456
#密钥口令
keyPassword=123456
#别名
keyAlias=shby
#keystore的路径
storeFile=android.keystore
修改buid.gradle文件
添加
def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
修改
signingConfigs{
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
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
//混淆
minifyEnabled true
useProguard true
//Zipalign优化
zipAlignEnabled true
// 移除无用的resource文件
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
混淆配置
新版默认开启混淆,能减少app体积,但是可能会遇到问题,我的app没有遇到问题,如需开启
创建 /android/app/proguard-rules.pro 文件,并添加以下规则:
#Flutter Wrapper
-keep class io.flutter.app.** { *; }
-keep class io.flutter.plugin.** { *; }
-keep class io.flutter.util.** { *; }
-keep class io.flutter.view.** { *; }
-keep class io.flutter.** { *; }
-keep class io.flutter.plugins.** { *; }
打包apk
执行
flutter build apk
默认为release版本
如有错误可执行
flutter build apk --debug
发布debug版本
目录如下:
build\app\outputs\apk\debug\app-debug.apk.
错误处理
如果是android release版本则默认没有权限
例如:如果需要添加网络权限
在android/app/src/main/AndroidManifest.xml添加如下:
<uses-permission android:name="android.permission.READ_PHONE_STATE" /><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
参考链接:https://flutterchina.club/android-release/
c39e4deda30a425b976dfc42650b22a5
版权声明:本文为weixin_44259356原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。