Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for reading DexGuard and ProGuard mapping files #88

Merged
merged 2 commits into from
Aug 17, 2022

Conversation

simonschiller
Copy link
Collaborator

@simonschiller simonschiller commented Aug 16, 2022

What has changed

  • We now read mapping files correctly for projects using DexGuard or ProGuard instead of R8.

Why was it changed

  • Because not everybody is using R8 to obfuscate their projects.

Related issues

@simonschiller simonschiller force-pushed the proguard-dexguard-mapping branch 5 times, most recently from 966495a to 3600d61 Compare August 16, 2022 18:50
@simonschiller simonschiller marked this pull request as ready for review August 16, 2022 19:38
@MrHadiSatrio
Copy link
Contributor

MrHadiSatrio commented Aug 17, 2022

Huge thanks for this @simonschiller! I ran this change through DexGuard's sample project and I can see that class names are properly de-obfuscated. 🎉

However, a couple of points...

  1. Unless DexGuard is configured with overwriteUnprotected == true, it will produce a separate AAB with -protected name suffix. In this case, variant.artifacts.get(SingleArtifact.BUNDLE) will not point to the correct artifact. I believe we should also handle this case within RulerPlugin.
  2. Resource file names are still obfuscated and because of it attribution is currently broken.

MrHadiSatrio@67130e0 should address (1). I'd be elated if you can consider including it in this MR. 😃

@simonschiller
Copy link
Collaborator Author

Those two points are valid concerns and we should fix them, but I'll go ahead and merge this and we can open separate PRs to solve those issues (just to keep changes small and atomic)!

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.

3 participants