Skip to content

[BUG] -dontobfuscate in SumUp proguard configuration #276

@PaulNeesham

Description

@PaulNeesham

Summary

Obfuscation is completley disabled on any app using your SDK.

Steps to Reproduce

Add SumUp android SDK 7.0.0 to a project and enable minify

Expected Behavior

SumUp should only keep classes relevant for itself to function correctly. The parent project should be able to obfuscate its classes.

Actual Behavior

No classes are obfuscated throughout the whole project.

Android Version(s)

any version

Impacted Devices

any device

Impacted Readers

all

Firmware Version(s)

any

Crash Log

After adding: -whyareyoukeeping class com.autocab.driverapp.activebid.services.AutobidService

Task :androidApp:minifyReleaseWithR8
com.autocab.driverapp.activebid.services.AutobidService
|- is referenced from:
| java.lang.Object com.autocab.driverapp.activebid.services.AutobidService$updateConfig$1.invokeSuspend(java.lang.Object)
|- is overriding method:
| java.lang.Object kotlin.coroutines.jvm.internal.BaseContinuationImpl.invokeSuspend(java.lang.Object)
|- is invoked from:
| void kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(java.lang.Object)
|- is referenced in keep rule:
| /Users/Paul.Neesham/.gradle/caches/9.3.1/transforms/f247b21793c516c0155b9276a9c03094/transformed/reader-7.0.0/proguard.txt:2:1

Top 4 lines of SumUp's proguard.txt:

ProGuard rules specific to the SumUp SDK

-keep class com.sumup.merchant.reader.** { *; }

Necessary for the keeping the synthetic generated classes by Moshi

-dontobfuscate

Removing sumup returns the app to correctly being obfuscated.

  • SumUp SDK: 7.0.0
  • Kotlin: any
  • Android Gradle Plugin:any
  • Gradle: any

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions