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

Android Studio+KMM环境下NEGOTIATE认证错误求助

解决域控制器环境下Android Studio KMM开发的NEGOTIATE认证错误

针对你遇到的NEGOTIATE authentication error: No valid credentials provided (Mechanism level: Failed to find any Kerberos tgt)错误,以下是具体解决思路:

  • 检查Kerberos TGT票据有效性
    打开终端/命令提示符,执行kinit your-domain-username@YOUR-DOMAIN.COM(替换成你的域账号和域名),输入域密码后用klist命令查看是否生成有效票据。如果获取失败,需联系域管理员确认账号权限或域服务状态,同时确保当前登录系统的是域账号而非本地账号。

  • 配置Android Studio的Kerberos VM参数
    找到Android Studio的VM配置文件:

    • Windows:安装目录下bin/studio64.exe.vmoptions
    • Mac:右键点击Android Studio图标→显示包内容→Contents/bin/studio.vmoptions
      添加以下配置行:
    -Djava.security.krb5.conf=C:\Windows\krb5.ini  # Windows系统用此路径;Mac/Linux替换为/etc/krb5.conf
    -Djavax.security.auth.useSubjectCredsOnly=false
    

    保存后重启Android Studio。

  • 完善系统与IDE的代理配置
    除了IDE内的Proxy设置,检查系统环境变量是否配置了HTTP_PROXY和HTTPS_PROXY,格式应为http://domain\username:password@proxy-server:port。若密码包含特殊字符(如@、#),需进行URL编码(例如@→%40,#→%23)。

  • 配置Gradle的代理参数
    KMM依赖Gradle构建,需在全局或项目的gradle.properties中添加代理配置:

    systemProp.http.proxyHost=你的代理服务器地址
    systemProp.http.proxyPort=代理端口
    systemProp.http.proxyUser=domain\\你的域账号  # Windows下反斜杠需转义,Mac/Linux用单斜杠
    systemProp.http.proxyPassword=你的域密码
    systemProp.https.proxyHost=你的代理服务器地址
    systemProp.https.proxyPort=代理端口
    systemProp.https.proxyUser=domain\\你的域账号
    systemProp.https.proxyPassword=你的域密码
    

    密码含特殊字符时同样要URL编码,配置后同步Gradle项目。

  • 确认代理服务器的Kerberos支持
    联系网络管理员,确认代理服务器是否启用了NEGOTIATE/Kerberos认证机制,且你的域账号被授权通过该代理访问外部资源(如Maven仓库、JetBrains插件仓库等)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 17:56:06