Skip to content

Instantly share code, notes, and snippets.

Last active May 18, 2018 19:25
  • Star 9 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
Star You must be signed in to star a gist
What would you like to do?
Process the Unity generated Xcode project to allow dSYM generation on Release but keeping the distribution size the same, only tested in a clean generated project.
// Adjust dSYM generation
var xcodeProjectPath = Path.Combine(xcodeProjectDir, "Unity-iPhone.xcodeproj");
var pbxPath = Path.Combine(xcodeProjectPath, "project.pbxproj");
var sb = new System.Text.StringBuilder();
var xcodeProjectLines = File.ReadAllLines(pbxPath);
foreach (var line in xcodeProjectLines)
// Remove from OTHER_LDFLAGS
if (line.Contains("-Wl,-S,-x"))
// iOS Default when not present is dwarf-with-dsym
if (line.Contains("DEBUG_INFORMATION_FORMAT"))
// Replace line to stripping on postprocess deployment flags
sb.AppendLine("\t\t\t\tDEPLOYMENT_POSTPROCESSING = YES;");
sb.AppendLine("\t\t\t\tSEPARATE_STRIP = YES;");
sb.AppendLine("\t\t\t\tSTRIP_INSTALLED_PRODUCT = YES;");
// Defaults to Yes
if (line.Contains("COPY_PHASE_STRIP"))
// Defaults to Yes
File.WriteAllText(pbxPath, sb.ToString());
Copy link

tenpn commented Dec 24, 2014

I forked this and wrapped it in a build post-processor. Just drop into your project and future builds will have crash info enabled.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment