Skip to content

Instantly share code, notes, and snippets.

Embed
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"))
continue;
// 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;");
continue;
}
// Defaults to Yes
if (line.Contains("COPY_PHASE_STRIP"))
continue;
// Defaults to Yes
if (line.Contains("GCC_GENERATE_DEBUGGING_SYMBOLS"))
continue;
sb.AppendLine(line);
}
File.WriteAllText(pbxPath, sb.ToString());
@MehYam

This comment has been minimized.

Copy link

MehYam commented Aug 23, 2013

Thanks for posting this, very useful.

@charlesbarros

This comment has been minimized.

Copy link

charlesbarros commented Dec 4, 2013

Thanks a lot dude! That saved my life. S2

@tenpn

This comment has been minimized.

Copy link

tenpn commented Dec 24, 2014

I forked this and wrapped it in a build post-processor. Just drop https://gist.github.com/tenpn/f8da1b7df7352a1d50ff 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
You can’t perform that action at this time.