Unity 2021.3.20f1加载场景/运行时出现Stopped polling job异常求助
错误信息
Stopped polling job due to exception: System.NullReferenceException: Object reference not set to an instance of an object at GooglePlayServices.UnityCompat.VersionFromAndroidSDKVersionsEnum (System.String enumName, System.String fallbackPrefKey, System.Int32 fallbackValue) [0x00001] in <48abf529805a49c69e88ffb3f8b573e9>:0
解决方案
更新Google Play Services插件
升级到Unity 2021 LTS后,旧版Google Play Services插件可能存在兼容性问题。打开Unity的Window > Package Manager,搜索并更新所有Google相关插件(如Google Play Games Plugin for Unity、Google Mobile Ads等)到适配2021 LTS的最新稳定版。若插件未在Package Manager中显示,先手动删除项目中旧的Google插件文件,再重新安装对应版本。重置Android SDK配置
进入Edit > Preferences > External Tools,确认Android SDK路径正确,点击"Refresh"刷新SDK组件。同时打开Android SDK Manager,确保已安装Unity 2021推荐的Android API级别(如API 31/33),并更新SDK Tools中的Google Play Services、Android SDK Build-Tools到最新版本。清理项目缓存并重建
- 关闭Unity,删除项目根目录下的
Library、Temp、Obj文件夹 - 重新启动Unity,等待项目自动生成缓存文件
- 进入
File > Build Settings,切换到Android平台,点击"Refresh"刷新平台配置
- 关闭Unity,删除项目根目录下的
检查Player Settings中的Gradle与发布配置
打开Edit > Project Settings > Player > Android > Publishing Settings,若启用了Custom Main Gradle Template或Custom Base Gradle Template,检查gradle文件内的Google Play Services依赖版本是否过时,替换为最新版。同时确认Package Name与Google Play Console中注册的一致,Keystore签名配置正确。修复UnityCompat类的空引用问题
若以上步骤无效,找到报错的UnityCompat.cs文件(通常位于Google Play Services插件目录下),检查VersionFromAndroidSDKVersionsEnum方法中的空引用触发点:比如是否枚举值未找到,或PlayerPrefs中无对应fallbackPrefKey的值。可手动添加默认Pref值,或替换为插件官方最新版本的该文件。
内容的提问来源于stack exchange,提问作者ChefDiggityDog

