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

Unity打包Android报TargetInvocationException及Firebase失效问题

问题现象
  • 触发环境:Unity 2022.1.0b2版本
  • 触发场景:执行Android平台打包、Android依赖Force Resolve操作时抛出异常
  • 核心异常信息:

Job failed with exception:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: Insecure connection not allowed

  • 伴随控制台警告:Non-secure network connections disabled in Player Settings
  • 关联功能表现:
    • 集成的Unity ADS、Unity IAP在编辑器环境、Android打包后均运行正常
    • 集成的Firebase Database、Firebase Authentication在编辑器内运行完全正常,但打包为Android安装包上架Google Play后完全失效,无法加载排行榜、不显示注册/登录入口
    • 历史操作:此前Android打包曾出现报错过多问题,通过删除可自动重建的Plugins文件夹解决,之后出现本次异常
根因分析

Unity 2022.1版本对Android平台默认启用严格网络安全策略,全局禁止非HTTPS的明文HTTP连接。此前删除Plugins文件夹重建的操作,清空了Firebase、Android Resolver生成的网络配置与依赖缓存,触发两个连锁问题:

  • Android Resolver默认配置下会通过HTTP连接拉取Gradle依赖,被系统网络策略直接拦截,导致resolve、打包流程抛出异常
  • Firebase SDK在Android端的网络安全配置丢失后,初始化时会尝试通过HTTP回源拉取项目配置,被系统拦截后初始化失败,直接导致认证、数据库功能全量失效;Unity ADS、IAP本身默认全走HTTPS请求,不受该策略影响。
分步解决方案

1. 修复打包/依赖解析阶段的连接拦截问题

  • 打开菜单栏 Edit > Project Settings > Player,切换到Android平台标签页,展开Other Settings > Configuration板块
  • 找到Internet Access选项,设置为Require,不要选择Auto模式
  • 找到Allow downloads over HTTP选项,临时设置为Allowed in development builds,先保证resolve、打包流程可正常执行(后续上架前需要改回合规配置)
  • 打开Assets > External Dependency Manager > Android Resolver > Settings,勾选Use HTTPS for gradle downloads,强制依赖解析全走HTTPS连接,从根源避免解析时触发明文连接拦截

2. 修复Firebase Android端初始化失效问题

  • 打开Assets/Plugins/Android路径,删除所有Firebase相关的.aar、.xml文件,不要改动其他SDK的文件
  • 重新导入对应版本的Firebase Unity SDK(不要使用UPM渠道分发的版本,2022.1.0b2测试版与UPM版Firebase存在已知兼容问题,使用官方.unitypackage安装包导入即可)
  • 将Firebase控制台下载的google-services.json配置文件放到Assets文件夹根目录,等待Android Resolver自动执行依赖解析
  • 解析完成后打开Assets/Plugins/Android/AndroidManifest.xml,确认<application>标签下存在自动生成的android:networkSecurityConfig="@xml/network_security_config"属性
  • 检查Assets/Plugins/Android/res/xml路径下是否存在network_security_config.xml文件,若不存在则手动新建,填入以下配置:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
  <base-config cleartextTrafficPermitted="false">
    <trust-anchors>
      <certificates src="system" />
    </trust-anchors>
  </base-config>
  <domain-config cleartextTrafficPermitted="true">
    <domain includeSubdomains="true">localhost</domain>
  </domain-config>
</network-security-config>

3. 上架前合规校验

  • 回到Player Settings的Android配置页,将Allow downloads over HTTP选项改回None,符合Google Play的上架政策要求
  • 执行一次Force Resolve,确认控制台不再抛出Insecure connection not allowed异常
  • 打Development Build包连接真机测试,确认Firebase认证、数据库功能正常加载后,再打Release包提交上架

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 16:39:33