Appcenter: AppCenter cannot deobfuscate Android R8 code

Created on 22 May 2019  路  21Comments  路  Source: microsoft/appcenter

What App Center service does this affect?
Crashes.

Describe the bug
With Android Studio 3.4, R8 becomes the default code shrinker. But AppCenter cannot deobfuscate R8 code with mappings.txt.

For example, the real stacktrace from logcat: at d.a.a.a.onClick(Unknown Source:0) which can be deobfuscated but the stacktrace that AppCenter captures is at d.a.a.a.onClick. Without the postfix, the stacktrace cannot be deobfuscated by AppCenter.

To Reproduce
Steps to reproduce the behavior:

  1. Create a basic application using Android Studio 3.4 or higher
  2. Add AppCenter Android SDK dependency
  3. Throw an exception anywhere
  4. Enable code shrink
  5. Build the APK
  6. Trigger the crash, compare stacktraces and retrace them manually.

Expected behavior
AppCenter should be able to deobfuscate the code after I switch from proguard to R8.

Smartphone (please complete the following information):

  • Device: All Android Devices
  • OS: All Android OS
diagnostics feature request hockeyapp

Most helpful comment

Having the same issue here. R8 should be supported when obfuscating the crash report since it is now the default code shrinker for android.

Looking forward to this issue to be fixed.

All 21 comments

Dexguard is not supported either #220

Thanks for filing an issue. App Center only supports ProGuard at this time. I've changed this to a feature request type so our team can monitor community support and better prioritize this in the future. We don't have any immediate plans to address this but we'll post here if there are any updates. Thanks!

I don't think this is feature because AppCenter Crashes for Android won't work out of box.馃
Something like "Use Proguard instead of R8 or the crash reports can't be deobfuscated" probably should be added to Android docs.

the same with us, that's very important to us @winnieli1208
and should be fixed as soon as possible.

Shouldn't really be a feature request btw, it is already a persisting issue, we should be able to read crash logs from diagnostics in AppCenter even if the output APK is obfuscated via proguard / r8 method. The reason behind this is, AppCenter is the one building the apps, so it should contain the necessary file to map the obfuscation... Really should be fixed otherwise will consider other alternatives to AppCenter.

Having the same issue here. R8 should be supported when obfuscating the crash report since it is now the default code shrinker for android.

Looking forward to this issue to be fixed.

I join this feature release. R8 is the default code shrinker and should be supported.

any plan for this request? @winnieli1

Hi all! Thanks for the patience. We added this to our iteration plan this month and expect to finish this in a few weeks. We'll post here with updates. Thanks!

@winnieli1 do you have plans to support DexGuard mappings (#220) this month as well?

Hi all - we completed the work needed to support R8 deobfuscation. Your new crashes will be deobfuscated when you upload the right mappings file. Thanks!

(@lukaville - we might not get to it this month but we're discussing internally where this falls on our timeline. Thanks!)

@winnieli1 do we need to reupload mappings to make it work for old releases ?

@filipkowicz - I'm double checking with the team but I believe you'll need to reupload mappings. Also note only new crashes will be processed and deobfuscated.

I still have some issue with de-obfuscation with R8.

Our app uses a SDK that is developed by us and is uploaded into our internal maven repo.
We have two mapping files: one for the SDK and one for the app.
We merge them together by appending the content of the sdk mapping file to the app mapping file. Then we upload this to appcenter.
When a crash occurs, we expect to have the stack-trace de-obfuscated for both the app and the SDK. However, only the app part of the stack-trace is de-obfuscated, not the SDK part.

It work fine locally with the official pro-guard tool: https://support.bugfender.com/en/articles/1744985-deobfuscating-a-stacktrace but it does not work on appcenter.

Hey @goupilapps do you mind starting a support ticket (blue chat bubble on the bottom right) so our team can take a closer look for you? Please include your app details and a sample mappings file.

Thanks!

Hi,

I'm still having an issue with R8, but only for the subtitle part, all the rest of the stack trace is deobfuscate :

image

Hey @Nutriz - can you please open a support ticket (select the Help icon "?" by upper right corner) so our team can investigate? Thanks!

Hi, still have the issue and no answer from the support ticket (help icon)

Hi @Nutriz - I found your support ticket and saw that our team responded a few times. Can you please check your Junk inbox? We've seen some cases where our responses end up there. I also just responded to the thread. Hopefully that'll bump it up.

Thanks!

I guess the mail was blocket by our main anti-spam (I have nothing under my client spam folder).
I have searched here https://intercom.help/appcenter/ but I don't have found my ticket, can you please give me the url ?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

patrickdoodyIRL picture patrickdoodyIRL  路  3Comments

chriskellor picture chriskellor  路  3Comments

vonovak picture vonovak  路  3Comments

master-lincoln picture master-lincoln  路  3Comments

kuyazee picture kuyazee  路  3Comments