{"record":{"id":"72e27850aac19b29","repo":"Unity-Technologies/UnityCsReference","slug":"playersettings-phoneappicon-is-deprecated-use-get","errorCode":null,"errorMessage":"PlayerSettings.phoneAppIcon is deprecated. Use GetVisualAssetsImage() instead.","messagePattern":"PlayerSettings\\.phoneAppIcon is deprecated\\. Use GetVisualAssetsImage\\(\\) instead\\.","errorType":"exception","errorClass":"NotSupportedException","httpStatus":null,"severity":"error","filePath":"Editor/Mono/PlayerSettingsWSA.cs","lineNumber":499,"sourceCode":"            public static string storeSplashScreenImageScale180\n            {\n                get\n                {\n                    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.\");","sourceCodeStart":481,"sourceCodeEnd":517,"githubUrl":"https://github.com/Unity-Technologies/UnityCsReference/blob/225b0fbdb57cc17d094e8056b71f8314aba56f73/Editor/Mono/PlayerSettingsWSA.cs#L481-L517","documentation":"PlayerSettings.WSA.phoneAppIcon is a deprecated static property getter that always throws NotSupportedException. The base-scale Windows Phone app icon property was consolidated into GetVisualAssetsImage(WSAImageType, WSAImageScale) with type WSAImageType.UWPSquare44x44Logo. It is [Obsolete(..., true)] and [EditorBrowsable(Never)].","triggerScenarios":"Reading PlayerSettings.WSA.phoneAppIcon (the getter) in editor scripts, build reports, or configuration inspectors. Direct C# access is a compile error; runtime hits come from reflection or SerializedProperty traversal.","commonSituations":"Migrating a Windows Phone 8 / Windows 8.1 project to UWP; plugins that read the app icon path; upgrading Unity and finding stale property references in build tooling.","solutions":["Replace with PlayerSettings.WSA.GetVisualAssetsImage(WSAImageType.UWPSquare44x44Logo, WSAImageScale._100).","Migrate all phoneAppIcon* variants (base, 140, 240) together.","Update plugin DLLs that reference the deprecated getter."],"exampleFix":"// before\nstring path = PlayerSettings.WSA.phoneAppIcon;\n\n// after\nstring path = PlayerSettings.WSA.GetVisualAssetsImage(WSAImageType.UWPSquare44x44Logo, WSAImageScale._100);","handlingStrategy":"type-guard","validationCode":"// Use the new getter for app icon at base scale\nstring path = PlayerSettings.WSA.GetVisualAssetsImage(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 all phoneAppIcon reads with GetVisualAssetsImage(WSAImageType.UWPSquare44x44Logo, ...).","Filter deprecated members during reflection-based property access.","Search for 'phoneAppIcon' after Unity version upgrades."],"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"}