{"record":{"id":"769e3cfec834e274","repo":"Unity-Technologies/UnityCsReference","slug":"playersettings-storesmalltile180-is-deprecated-us","errorCode":null,"errorMessage":"PlayerSettings.storeSmallTile180 is deprecated. Use GetVisualAssetsImage() instead.","messagePattern":"PlayerSettings\\.storeSmallTile180 is deprecated\\. Use GetVisualAssetsImage\\(\\) instead\\.","errorType":"exception","errorClass":"NotSupportedException","httpStatus":null,"severity":"error","filePath":"Editor/Mono/PlayerSettingsWSA.cs","lineNumber":387,"sourceCode":"            public static string storeSmallTile140\n            {\n                get\n                {\n                    throw new NotSupportedException(\"PlayerSettings.storeSmallTile140 is deprecated. Use GetVisualAssetsImage() instead.\");\n                }\n                set\n                {\n                    throw new NotSupportedException(\"PlayerSettings.storeSmallTile140 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 storeSmallTile180\n            {\n                get\n                {\n                    throw new NotSupportedException(\"PlayerSettings.storeSmallTile180 is deprecated. Use GetVisualAssetsImage() instead.\");\n                }\n                set\n                {\n                    throw new NotSupportedException(\"PlayerSettings.storeSmallTile180 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 storeLargeTile80\n            {\n                get\n                {\n                    throw new NotSupportedException(\"PlayerSettings.storeLargeTile80 is deprecated. Use GetVisualAssetsImage() instead.\");\n                }\n                set\n                {\n                    throw new NotSupportedException(\"PlayerSettings.storeLargeTile80 is deprecated. Use SetVisualAssetsImage() instead.\");","sourceCodeStart":369,"sourceCodeEnd":405,"githubUrl":"https://github.com/Unity-Technologies/UnityCsReference/blob/225b0fbdb57cc17d094e8056b71f8314aba56f73/Editor/Mono/PlayerSettingsWSA.cs#L369-L405","documentation":"PlayerSettings.WSA.storeSmallTile180 is a deprecated property representing the small 71x71 square tile image shown on the Start menu at 180% scale. Note: the 180% scale is itself deprecated in WSAImageScale (not used in Universal Windows Platform); prefer _100, _125, _150, _200, or _400. It is decorated with [Obsolete(\"Use GetVisualAssetsImage()/SetVisualAssetsImage()\", true)], making direct access a compile-time error (CS0619). The get accessor additionally throws NotSupportedException at runtime to catch reflection-based or dynamically dispatched access. The replacement API is GetVisualAssetsImage(WSAImageType.UWPSquare71x71Logo, WSAImageScale._180) for this specific accessor.","triggerScenarios":"Accessing PlayerSettings.WSA.storeSmallTile180 via its get accessor. Reading the property value, e.g. var img = PlayerSettings.WSA.storeSmallTile180; triggers the NotSupportedException from the get block. Compile-time access is blocked by the [Obsolete(..., true)] attribute (error CS0619). Runtime exceptions only surface when the property is reached through reflection, dynamic invocation, or IL that bypasses the compiler check.","commonSituations":"Upgrading a Unity project from a version that supported these Windows 8.1-era store image properties to a UWP-only build. Build scripts, CI/CD pipelines, or editor extensions that batch-configure WSA visual assets using the old individual-property API. Third-party plugins or asset store packages that reference PlayerSettings.WSA.storeSmallTile180. Code migrated from Windows 8.1 Metro/WinRT templates that hardcoded DPI-scaled tile logos.","solutions":["Replace the property read with PlayerSettings.WSA.GetVisualAssetsImage(WSAImageType.UWPSquare71x71Logo, WSAImageScale._180).","If the 180% scale is deprecated (80/140/180), switch to a UWP-supported scale such as WSAImageScale._100 or WSAImageScale._200.","If the calling code is in a shared library, wrap the new call in a #if UNITY_2019_4_OR_NEWER (or appropriate version) preprocessor guard to maintain backward compatibility.","Search the entire solution for all references to the deprecated property (including in .asmdef-referenced assemblies) to ensure no compile-time or reflection-based access remains."],"exampleFix":"// before\nvar logoPath = PlayerSettings.WSA.storeSmallTile180;\n// after\nvar logoPath = PlayerSettings.WSA.GetVisualAssetsImage(\n    WSAImageType.UWPSquare71x71Logo,\n    WSAImageScale._180);","handlingStrategy":"validation","validationCode":"// Validate the property is not among the deprecated set before reflection access\nvar prop = typeof(PlayerSettings.WSA).GetProperty(\"storeSmallTile180\");\nif (prop != null && prop.GetCustomAttribute<ObsoleteAttribute>()?.IsError == true)\n{\n    // Use the replacement API instead\n    var img = PlayerSettings.WSA.GetVisualAssetsImage(\n        WSAImageType.UWPSquare71x71Logo, WSAImageScale._180);\n}","typeGuard":null,"tryCatchPattern":"try\n{\n    // Deprecated property access via reflection\n    var val = typeof(PlayerSettings.WSA)\n        .GetProperty(\"storeSmallTile180\")?.GetValue(null);\n}\ncatch (NotSupportedException ex) when (ex.Message.Contains(\"deprecated\"))\n{\n    // Fallback to the replacement API\n    var val = PlayerSettings.WSA.GetVisualAssetsImage(\n        WSAImageType.UWPSquare71x71Logo, WSAImageScale._180);\n}","preventionTips":["Treat compiler warnings CS0618/CS0619 as errors in your .csproj or ProjectSettings to catch deprecated PlayerSettings.WSA property usage before runtime.","When upgrading Unity versions, run a full-solution grep for 'storeTile' and 'storeSmall' to identify all deprecated WSA visual-asset properties.","Migrate all WSA image configuration to GetVisualAssetsImage/SetVisualAssetsImage in a single pass rather than property-by-property.","Avoid reflection-based access to PlayerSettings.WSA properties; the [Obsolete(..., true)] attribute only protects compile-time callers, not reflection.","Replace deprecated scale values (_80, _140, _180) with UWP-supported scales (_100, _125, _150, _200, _400) during the same migration."],"tags":["unity","deprecated","wsa","uwp","player-settings","visual-assets","small-square-tile"],"backgroundTag":null,"analyzedSha":"225b0fbdb57cc17d094e8056b71f8314aba56f73","analyzedAt":"2026-08-13T19:07:19.849Z","schemaVersion":2},"datasetVersion":"2026-08-13T19:17:28.613Z"}