Skip to content

support xib and storyboard obfuscation with command line option#130

Open
ptwoms wants to merge 1 commit into
rockbruno:masterfrom
ptwoms:feature/interface_builder_obfuscation
Open

support xib and storyboard obfuscation with command line option#130
ptwoms wants to merge 1 commit into
rockbruno:masterfrom
ptwoms:feature/interface_builder_obfuscation

Conversation

@ptwoms

@ptwoms ptwoms commented Jun 14, 2021

Copy link
Copy Markdown
Contributor

I added this because my projects use storyboards and xibs and it takes time to update xml files manually after source obfuscation.
IB XML obfuscation is added as an option (--include-ibxmls) and is not enabled by default.

@rockbruno

Copy link
Copy Markdown
Owner

I actually supported this feature at one point, but I removed it because there were far too many reports of things not being obfuscated correctly (for example, obfuscating a method configured as an outlet) because the storyboards have a billion different ways of storing this information. I considered it impossible to maintain properly, are you confident that this works for all cases?

@ptwoms

ptwoms commented Jun 15, 2021

Copy link
Copy Markdown
Contributor Author

It basically looks for any xml tags with customClass attribute for custom class (and customModule for ignore modules) as long as the class name is in the obfuscated dictionary. And selector with parent tag connections (destination -> customModule for ignore modules) for IBAction. It is working fine on the projects I am working on.

I haven't come across other patterns yet. If they can provide the sample IB file I can look into it. That's why I put this option as experimental.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants