我一直在使用Google Play应用签名,Flutter和VS代码没有问题有一段时间了,但从昨天开始,我正在处理的每一个Flutter项目的每一个发布版本都不断遇到错误,并报告我正在尝试上传调试版本。
“您上传了在调试模式下签名的APK或Android应用捆绑包。您需要在发布模式下签名您的APK或Android应用捆绑包”
即使是新的应用程序也有同样的问题
我清理了构建文件夹,使用了--release标志,两个选项都不起作用。
我想尝试的一件事是手动编译应用程序,手动签名,然后上传,但不能解决如何做到这一点。
有什么建议吗?扯头发,因为我想不出任何变化,最近可能会影响这一点。
flutter doctor输出-唯一有点奇怪的是缺少VS代码flutter扩展-它不是:-/
] Flutter(通道测试版,v0.5.1,在Mac OS X 10.13.6 17 G65,语言环境en-GB)· Flutter版本0.5.1在/用户/kenwen/开发工具/flutter ·框架修订c7 ea 3ca 377(10周前),2018-05-29 21:07:33 + 0200·引擎修订1 ed 25 ca 7 b7· Dart版本2.0.0-dev.58.0. flutter-f981 f09760
[] Android工具链-为Android设备开发(Android SDK 28.0.1)· Android SDK位于/Users/kenwen/Library/Android/sdk · Android NDK位置未配置(可选;·平台android-28,构建工具28.0.1 · Java二进制文件,位于:/应用程序/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java· Java版本OpenJDK运行时环境(内部版本1.8.0_152-版本-1024-b 01)·接受所有Android许可证。
[] iOS工具链-为iOS设备开发(Xcode 9.4.1)· Xcode位于/Applications/Xcode.app/Contents/Developer· Xcode 9.4.1,构建版本9 F2000·iOS部署1.9.2 · CocoaPods版本1.5.2
[] Android工作室(版本3.1)· Android工作室在/应用程序/Android Studio.app/Contents·Flutter插件版本27.0.1 · dart 插件版本173.4700 · Java版本OpenJDK运行时环境(构建1.8.0_152-发布-1024-b 01)
[!] VS代码(版本1.25.1)· VS代码位于/Applications/Visual Studio Code.app/Contents· Flutter扩展未安装;从https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter安装
[!]已连接设备!无可用设备
!医生发现2类问题。
build.gradle
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.")
}
apply plugin: 'com.android.application'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
android {
compileSdkVersion 27
lintOptions {
disable 'InvalidPackage'
}
defaultConfig {
// TODO: Specify your own unique Application ID
(https://developer.android.com/studio/build/application-id.html).
applicationId "uk.co.kenliu.meanfitfoxes"
minSdkVersion 21
targetSdkVersion 27
versionCode 21
versionName "1.7.9"
testInstrumentationRunner
"android.support.test.runner.AndroidJUnitRunner"
}
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.debug
}
}
}
flutter {
source '../..'
}
dependencies {
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}
apply plugin: 'com.google.gms.google-services'
6条答案
按热度按时间fwzugrvs1#
您必须为发布模式创建签名配置,在当前文件中,您将使用调试中的签名配置。
在您的gradle文件中创建签名配置:
在这里您可以找到更多信息:https://docs.flutter.dev/deployment/android
bkhjykvo2#
您还需要更改
至
在文件android/app/build.gradle中
zfciruhq3#
问题用红色标记。你已经复制了第一部分,也就是signedConfigs。但是没有把“debug”改成“release”。NASA透露,当你真实的匆忙,看不到文档中的一些细节,需要尽快构建和发布项目时,就会发生这种情况。我就是这样。
文档页面https://flutter.dev/docs/deployment/android的屏幕截图
egmofgnx4#
在
android/app/build.gradle
中,将signingConfig signingConfigs.debug
更改为signingConfig signingConfigs.release
(可在buildTypes
下找到)oyxsuwqo5#
您必须生成一个上传密钥和密钥库。
在菜单栏中,点击构建〉生成签名包/APK。
在生成签名捆绑包或APK对话框中,选择Android应用捆绑包或APK,然后单击下一步。
在“密钥库路径”字段下方,单击“新建”。
填写必填字段:路径、密码、密钥、密码、有效年数、证书详细信息(名称、组织单元等)
单击“确定”(Ok)。
要构建,请转到菜单〉构建〉生成签名捆绑包/APK。
选择释放模式,不要忘记检查V1和V2 x1c 0d1x
以上信息取自Android Developer User Guide
yyhrrdl86#
文件路径:
android/app/build.gradle
搜索**
signingConfig signingConfigs.debug
并用signingConfig signingConfigs.release
**替换