View on Asset Store (opens in new tab)
Package details
- Latest version
- 1.0
- Last updated
- First released
- Unity version
- 6000.4.4 or later
- Package size
- 61 KB
- Files
- 17
- Favorites
- 2
- Views in the past week
- 8
Price tracking
- Last checked
- Tracked since
- Lowest recorded
- $39.99 on
Keywords
IL2CPP Strip Guard
Find IL2CPP strip bugs before your build breaks.
Affiliate link · Purchases support this site
Price history
Last 6 months
USDAsset preview
1 / 6
IL2CPP Strip Guard screenshot 1
About this asset
IL2CPP bugs are painful because they often show up only after you build.
A script works fine in the Editor. Then you make a WebGL, Android, iOS, VR, or console build, and suddenly a type, method, serializer, save system, or reflection call stops working.
IL2CPP Strip Guard helps you catch those risks early.
It scans your Unity project and shows places where IL2CPP managed stripping, reflection, serialized type names, or AOT generics may break your build.
Use it when your project has:
- Reflection
- Save systems
- Custom serializers
- Runtime type loading
- Command systems
- Dialogue systems
- Event systems
- Dependency injection
- Addressables
- Generic factories
What it helps you do:
- Find risky IL2CPP code before shipping
- See clear Critical, High, Medium, and Low risk findings
- Check if risks are already covered by [Preserve] or link.xml
- Generate a reviewable link.xml suggestion
- Export JSON and Markdown reports
- Run checks in CI so bad builds can fail early
- Ignore known safe findings when needed
This tool does not promise that your whole project is 100% IL2CPP safe.
It gives you a practical safety scan, clear warnings, and useful fixes so you are not debugging blind after a broken build.
From the publisher's Asset Store listing.
Technical details
- Unity version: Unity 2021.3 LTS+
- Tested with:Unity 2021.3 LTS
Unity 2022.3 LTS
Unity 6+ - Editor-only: does not add runtime code to your player build
- Menu path: Tools > IL2CPP Strip Guard
- Settings path: Project Settings > IL2CPP Strip Guard
- Default generated link.xml path: Assets/IL2CPPStripGuard/Generated/link.xml
- Default report path: Library/IL2CPPStripGuard/Reports
Scans for common IL2CPP risk patterns:
- Type.GetType("Namespace.Type")
- assembly.GetType("Namespace.Type")
- Activator.CreateInstance(...)
- GetMethod("MethodName")
- GetField("FieldName")
- GetProperty("PropertyName")
- MethodInfo.Invoke(...)
- MakeGenericType(...)
- MakeGenericMethod(...)
- typeof(Generic<>)
- [SerializeReference]
- Serialized managed reference type names
- Serialized strings that look like runtime type names
Recognizes preserve coverage from:
- [UnityEngine.Scripting.Preserve]
- [Preserve]
- [assembly: Preserve]
- Existing Assets/**/link.xml files
- Generated link.xml
- Assembly, namespace, type, and member preserve entries
Reports finding status as:
- Active risk not covered or ignored
- Covered risk appears protected
- Ignored risk matches an ignore rule or ignore comment
CI support:
Batchmode execute method:
IL2CPPStripGuard.Editor.IL2CPPStripGuardCI.Run
Fully namespaced method:
KevinBjorvand.IL2CPPStripGuard.Editor.IL2CPPStripGuardCI.Run
CI can:
- Run scan without opening the window
- Export JSON and Markdown reports
- Log severity counts
- Use fail thresholds
- Exit with code 1 when thresholds are exceeded
- Exit with code 0 when checks pass
Important limitations:
- The scan is heuristic
- It does not run player builds
- It does not prove all generic AOT coverage
- False positives can happen
- False negatives can happen with very indirect dynamic code
- Generated link.xml preserves metadata, but may not force every closed generic method body or instantiation
Compatibility
| Unity version | Built-in | URP | HDRP |
|---|---|---|---|
| 6000.4.4f1 | Compatible | Compatible | Compatible |
As listed on the Asset Store.