{"record":{"id":"27adf00ac0924284","repo":"Unity-Technologies/UnityCsReference","slug":"playersettings-phoneappicon-is-deprecated-use-set","errorCode":null,"errorMessage":"PlayerSettings.phoneAppIcon is deprecated. Use SetVisualAssetsImage() instead.","messagePattern":"PlayerSettings\\.phoneAppIcon is deprecated\\. Use SetVisualAssetsImage\\(\\) instead\\.","errorType":"exception","errorClass":"NotSupportedException","httpStatus":null,"severity":"error","filePath":"Editor/Mono/PlayerSettingsWSA.cs","lineNumber":503,"sourceCode":"                    throw new NotSupportedException(\"PlayerSettings.storeSplashScreenImageScale180 is deprecated. Use GetVisualAssetsImage() instead.\");\n                }\n                set\n                {\n                    throw new NotSupportedException(\"PlayerSettings.storeSplashScreenImageScale180 is deprecated. Use SetVisualAssetsImage() instead.\");\n                }\n            }\n\n            [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]\n            [Obsolete(\"Use GetVisualAssetsImage()/SetVisualAssetsImage()\", true)]\n            public static string phoneAppIcon\n            {\n                get\n                {\n                    throw new NotSupportedException(\"PlayerSettings.phoneAppIcon is deprecated. Use GetVisualAssetsImage() instead.\");\n                }\n                set\n                {\n                    throw new NotSupportedException(\"PlayerSettings.phoneAppIcon is deprecated. Use SetVisualAssetsImage() instead.\");\n                }\n            }\n\n            [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]\n            [Obsolete(\"Use GetVisualAssetsImage()/SetVisualAssetsImage()\", true)]\n            public static string phoneAppIcon140\n            {\n                get\n                {\n                    throw new NotSupportedException(\"PlayerSettings.phoneAppIcon140 is deprecated. Use GetVisualAssetsImage() instead.\");\n                }\n                set\n                {\n                    throw new NotSupportedException(\"PlayerSettings.phoneAppIcon140 is deprecated. Use SetVisualAssetsImage() instead.\");\n                }\n            }\n\n            [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]","sourceCodeStart":485,"sourceCodeEnd":521,"githubUrl":"https://github.com/Unity-Technologies/UnityCsReference/blob/225b0fbdb57cc17d094e8056b71f8314aba56f73/Editor/Mono/PlayerSettingsWSA.cs#L485-L521","documentation":"PlayerSettings.WSA.phoneAppIcon is a deprecated static property setter that always throws NotSupportedException. The base-scale Windows Phone app icon assignment was replaced by SetVisualAssetsImage(string, WSAImageType, WSAImageScale) with type WSAImageType.UWPSquare44x44Logo. It is [Obsolete(..., true)] and [EditorBrowsable(Never)].","triggerScenarios":"Assigning to PlayerSettings.WSA.phoneAppIcon (the setter) in editor scripts, build automation, or post-processing. Usually encountered through reflection-based code or code targeting a deprecated API surface.","commonSituations":"Upgrading from Unity 5.x/2017 to a modern version; CI scripts that set the UWP app icon; third-party build tools that hard-code old property names.","solutions":["Replace with PlayerSettings.WSA.SetVisualAssetsImage(path, WSAImageType.UWPSquare44x44Logo, WSAImageScale._100).","Migrate all phoneAppIcon* scale variants at once.","Update plugins to versions targeting the current Unity API."],"exampleFix":"// before\nPlayerSettings.WSA.phoneAppIcon = \"Assets/Icons/appIcon.png\";\n\n// after\nPlayerSettings.WSA.SetVisualAssetsImage(\"Assets/Icons/appIcon.png\", WSAImageType.UWPSquare44x44Logo, WSAImageScale._100);","handlingStrategy":"type-guard","validationCode":"// Use the new setter for app icon at base scale\nPlayerSettings.WSA.SetVisualAssetsImage(path, WSAImageType.UWPSquare44x44Logo, WSAImageScale._100);","typeGuard":"static bool IsDeprecatedWsaProperty(string name) =>\n    typeof(PlayerSettings.WSA)\n        .GetProperty(name,\n            System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static)\n        ?.GetCustomAttribute<ObsoleteAttribute>()?.IsError == true;","tryCatchPattern":null,"preventionTips":["Replace phoneAppIcon assignments with SetVisualAssetsImage.","Maintain a legacy-to-new mapping for all phone app icon scale variants.","Update plugins after Unity version bumps."],"tags":["unity","uwp","wsa","deprecation","player-settings","app-icon"],"backgroundTag":null,"analyzedSha":"225b0fbdb57cc17d094e8056b71f8314aba56f73","analyzedAt":"2026-08-13T19:07:19.849Z","schemaVersion":2},"datasetVersion":"2026-08-13T19:17:28.613Z"}