Repository navigation
Releases: Ealireza/StringObfuscator
Release list
v0.0.4
v0.0.4 add selective layer 3
stringEncrypt {
enabled = true
applyToDebug = true
minStringLength = 4
// π Mode: WHOLE_APP or SELECTED_ONLY
mode = EncryptMode.SELECTED_ONLY
// π Include specific classes (for SELECTED_ONLY mode)
includeClasses = listOf(
"com.appx.app.Splash",
"com.appx.app.secrets.ApiConfig"
)
// π Include entire packages
includePackages = listOf("com.appx.app.secrets")
// π Random seed per build (recommended)
randomSeed = true // New key every build!
// or fixedSeed = 0x12345678 for reproducible builds
}
v0.0.3
β¨ What's New
Layer 1: Improved KSP Processor
Enhanced string property detection
Better support for arrays, lists, and sets
Improved code generation
Layer 2: StringRegistry (NEW)
New StringRegistry for inline string obfuscation
AES-128 encryption with app signature key derivation
Simple API: S["key"] syntax for easy usage
No code changes needed - just register and use
Layer 3: Bytecode Plugin (NEW)
Automatic inline string encryption
Zero code changes required
Uses modern AGP Instrumentation API
Configurable exclusions and patterns
π§ What's Fixed
Fixed deprecated GET_SIGNATURES API - now uses modern GET_SIGNING_CERTIFICATES on Android 9+
Backward compatible with Android 5.0+
Improved sample app with all three layer examples
π¦ Installation
kotlin
dependencies {
implementation("com.github.Ealireza.StringObfuscator:stringobfuscator-annotation:v0.0.3")
implementation("com.github.Ealireza.StringObfuscator:stringobfuscator-runtime:v0.0.3")
ksp("com.github.Ealireza.StringObfuscator:stringobfuscator-processor:v0.0.3")
}
π Requirements
Kotlin 1.9+
KSP 2.0+
AGP 8.0+
Min SDK 21