IL2CPP Strip Guard 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

by Kevin Bjorvand (opens in new tab)

No ratings yet

Find IL2CPP strip bugs before your build breaks.

Price $79.99

Buy on Asset Store (opens in new tab)

Affiliate link · Purchases support this site

Price history

Last 6 months

USD
Price history for IL2CPP Strip Guard, 6 months Current $79.99; lowest $39.99; highest $79.99 in this period. $0 $50 $100 Jul Aug Sep Oct Nov

Asset preview

1 / 6

IL2CPP Strip Guard screenshot 1

IL2CPP Strip Guard screenshot 1

About this asset

📄 Documentation

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

Render pipelines supported in each Unity version
Unity version Built-in URP HDRP
6000.4.4f1 Compatible Compatible Compatible

As listed on the Asset Store.