美文网首页
flutter A cryptographic error oc

flutter A cryptographic error oc

作者: jxiang112 | 来源:发表于2025-04-21 14:22 被阅读0次

问题现象:

A cryptographic error occurred while checking "https://pub.flutter-io.cn": Handshake error in client
You may be experiencing a man-in-the-middle attack, your network may be compromised, or you may have malware
installed on your computer

问题分析与定位

分析

1、怀疑镜像原因:看字面意思是因为https://pub.flutter-io.cn证书握手原因,一开始以为是镜像https://pub.flutter-io.cn,然后换成了上海、清华的镜像还是一样的问题。——》非镜像原因
2、怀疑公司网络问题:一顿操作,换成手机共享的wifi也是一样 ——》非公司网络问题
3、怀疑缓存问题:一顿flutter clean; dart pub cache repair 下来,把自己的flutter环境搞出了问题 ——》 非缓存问题
4、网上各种找原因,结果定位到是maven镜像问题:
flutter 3.10.5 安装问题

解决方案

1、修改flutter maven镜像
打开http_host_validator.dart文件
(flutter跟目录\packages\flutter_tools\lib\src\http_host_validator.dart,比如:E:\enviroment\flutter\packages\flutter_tools\lib\src\http_host_validator.dart)
修改kMaven 的地址为https://maven.aliyun.com/repository/google,如下所示:

/// Common Flutter HTTP hosts.
const String kCloudHost = 'https://storage.googleapis.com/';
const String kCocoaPods = 'https://cocoapods.org/';
const String kGitHub = 'https://github.com/';
//const String kMaven = 'https://maven.google.com/';
const String kMaven = 'https://maven.aliyun.com/repository/google';
const String kPubDev = 'https://pub.dev/';

2、删除flutter bin cache
删除: flutter跟目录\bin\cache (比如:E:\enviroment\flutter\bin\cache)
3、命令行重新执行 flutter doctor

以上一切准备就绪,以为一切都ok时,然而编译项目时,报如下错误:

Building with plugins requires symlink support.

Please enable Developer Mode in your system settings. Run
  start ms-settings:developers
to open settings.
exit code 1



* What went wrong:
Execution failed for task ':app:compileReleaseKotlin'.
> Error while evaluating property 'filteredArgumentsMap' of task ':app:compileReleaseKotlin'.
   > Could not resolve all files for configuration ':app:releaseCompileClasspath'.
      > Failed to transform flutter.jar to match attributes {artifactType=android-classes-jar, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}.
         > Execution failed for JetifyTransform: E:\enviroment\flutter\bin\cache\artifacts\engine\android-arm64\flutter.jar.
            > Transform's input file does not exist: E:\enviroment\flutter\bin\cache\artifacts\engine\android-arm64\flutter.jar. (See https://issuetracker.google.com/issues/158753935)

分析:看日志是找不到android-arm
Transform's input file does not exist: E:\enviroment\flutter\bin\cache\artifacts\engine\android-arm64\flutter.jar
解决方案:
下载android-arm相关,命令行执行:flutter precache

最后重新编译项目,解决问题

相关文章

网友评论

      本文标题:flutter A cryptographic error oc

      本文链接:https://www.haomeiwen.com/subject/gpybbjtx.html