...
sdk
package contains all public classes and interfaces to be used by the final app.impl
package contains all internal class implementation implementations and is not visible outside the SDK.
...
The result of this two-step obfuscation is thousands of classes (SDK, client app, dependencies) that are stored in the same bag and make it very hard to retrieve sensitive code.
...
ProGuard
In case you use ProGuard as a code obfuscation / protection tool, here are a few rules that should help you start:
Code Block |
---|
# Rules
-keepattributes SourceFile,LineNumberTable
-keepattributes InnerClasses,Signature
-keepattributes *Annotation*
-keepattributes Exceptions
# Android
-keep class androidx.**
-keep class com.google.android.gms.** { *; }
# Agnos
-keep, includedescriptorclasses class ca.amadis.agnos.impl.** { *; }
-keep class ca.amadis.agnos.sdk.** { *; }
# Secure client
-keep class ca.amadis.secclt.impl.** { *; } |
Note |
---|
These are just default settings to make sure your application will run smoothly. They could definitely be refined to ensure a higher level of security. |