You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET MAUI安卓模拟器对接Web API遇SSL及依赖问题求助

解决.NET MAUI安卓模拟器连接Web API的SSL握手及包缺失问题

报错信息

javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

问题背景

对接Web API与.NET MAUI时,出现SSL握手错误、引用问题及运行时包缺失,需实现安卓模拟器与Web API的正常连接。

解决方案

一、修复SSL握手错误

如果Web API使用自签名HTTPS证书,安卓模拟器默认会拒绝信任,可通过以下两种方式处理:

  • 方式1:添加证书到系统信任(推荐开发/测试环境)
    1. 导出Web API的证书为.cer格式(可通过浏览器导出站点证书)
    2. 将证书推送到安卓模拟器的/system/etc/security/cacerts/目录,执行命令设置权限:adb push your-cert.cer /system/etc/security/cacerts/ && adb shell chmod 644 /system/etc/security/cacerts/your-cert.cer
    3. 重启模拟器后,系统会信任该证书
  • 方式2:临时跳过SSL验证(仅开发环境,生产禁用)
    在Platforms/Android/MainApplication.cs的OnCreate方法中添加代码:
    public override void OnCreate()
    {
        base.OnCreate();
        ServicePointManager.ServerCertificateValidationCallback += (_, _, _, _) => true;
    }
    

二、解决引用及运行时包缺失问题

  • 检查NuGet包:右键项目→管理NuGet包,确保Microsoft.Maui.Controls、Microsoft.Extensions.Http等依赖包已安装,且版本与项目的.NET MAUI版本匹配
  • 清理并重建项目:执行命令dotnet clean→dotnet restore→dotnet build,清除缓存并重新加载依赖
  • 验证模拟器运行时:打开Visual Studio Installer,确认.NET MAUI相关组件已安装,且模拟器已部署对应版本的.NET运行时

三、连接测试要点

安卓模拟器访问本地Web API时,需将localhost替换为10.0.2.2(安卓模拟器的回环地址映射),确保API地址可访问。

内容的提问来源于stack exchange,提问作者ELANGOVAN D

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 22:27:16