Commit Graph

178 Commits

Author SHA1 Message Date
Skylot 468b52342d fix(cli): in 'progress' log mode show issues from input plugins (#2803) 2026-02-25 19:44:50 +00:00
Deleted user 8f727325d6 fix(cli): distinguish JadxCLI error code (PR #2734) 2026-01-04 16:28:31 +00:00
Skylot 8629e4cf22 tests(cli): use provided plugin loader to not use global plugins in tests 2025-12-23 21:40:35 +00:00
Skylot bd5c6b6516 fix(plugins): use class with correct fields for plugins list entry 2025-12-23 21:27:40 +00:00
Skylot 01af6481f6 fix(gui): handle config save error, don't write partial config 2025-12-21 19:33:21 +00:00
Skylot 3e709d6693 feat(cli): implement config file load and save (#1731) 2025-12-15 21:07:10 +00:00
Skylot f17c46224d fix: improve decoding errors handling (#2676) 2025-10-29 19:08:18 +00:00
Skylot 5726a52ab6 fix: minor fixes for type update limit option (#2629) 2025-09-09 21:16:54 +01:00
Away f61d90ec2f feat: allow to change limit for type inference updates (PR #2629)
* Fix Type inference error: updates count limit reached

* Fix for the "Type inference error: updates count limit reached"
* Users will be able to choose the limit and possibly avoid this error
* Adding options on decompilation settings

* Updating README.md with new type update limit parameter

Updating README.md with new type update limit parameter
2025-09-09 20:50:04 +01:00
Skylot c04dddfa81 fix(cli): improve memory usage in jadx-cli (#2524) 2025-06-16 21:00:01 +01:00
Yaroslav 00608f8e51 feat(res): use file headers to detect extension for obfuscated resources (PR #2495)
* feat(res): add feature to use headers for detect resource extensions if resource obfuscated

* fix(res): read first 4kb data, for detect headers & use utf8 charset for decode bytes to string
2025-05-20 21:07:41 +01:00
Skylot 07c66b5c3c fix(tests): fix paths check on Windows 2025-04-29 22:31:29 +01:00
Skylot e3aa49aaa9 feat: add gradle export templates, support android app/lib and simple java 2025-04-29 21:54:40 +01:00
Skylot 9981949a2b feat(api): add 'unload' method to JadxPlugin (#2463) 2025-04-20 21:44:47 +01:00
Skylot d4ce969fb7 fix(test): don't use global configs for cli integration tests 2025-04-15 21:47:51 +01:00
Skylot bb6db25c9d fix(gui): apply log level as early as possible 2025-03-25 22:00:21 +00:00
Skylot d84f0389ec feat: custom zip reader implementation to fight tampering
fix(zip): use size info from CD if LFH entry is incorrect

refactor: move custom zip implementation into new module

feat: move ZipSecurity into jadx-zip module
2025-03-13 20:22:26 +00:00
Skylot a43b475be7 fix: improve rename using source class name (#2397) 2025-01-20 21:55:46 +00:00
Skylot bc4bb0dc41 fix(cli): concat new lines in plugin description 2025-01-20 19:35:54 +00:00
Iscle 7a2dad8ef2 feat: add APKM support (PR #2379)
* feat: Add APKM support

* fix: Removed unused imports

With spotlessApply :P
2024-12-22 16:58:44 +00:00
Skylot a67dfcb7e1 fix(plugins): use release from asset if differ from release name with GitHub resolver 2024-11-24 18:52:32 +00:00
Jan S. fe9d3bcab7 fix(res): allow jumping backwards to an already processed position (PR #2344)
Use buffered stream to allow going backwards in stream in case the type chunk entries are not ordered properly (see #2343).
2024-11-15 15:12:47 +00:00
Skylot be6cb573b1 feat(plugins): allow to set minimum required jadx version in plugin info (#2314) 2024-11-06 16:30:22 +00:00
Skylot 57238de6ff feat(cli): add option to disable plugins (#2277) 2024-11-01 20:13:34 +00:00
Skylot cc6a893402 feat: allow to disable installed plugins (#2277) 2024-10-28 23:35:28 +03:00
Skylot 343e2c531a chore: expand input dirs in ConvertArscFile 2024-10-25 18:12:48 +01:00
Skylot 8f3cc3e8c1 fix: add missing null check in codegen for classes generated by jadx 2024-10-14 19:19:31 +01:00
Skylot c21cabcba7 fix: use temp dir env var only in apps 2024-10-10 22:57:40 +03:00
Skylot 063af8cd62 feat(api): add JadxArgs property to adjust xml security checks (#2291) 2024-10-10 22:57:40 +03:00
qfalconer 964bd62d35 feat: adding automatic patching for semi-corrupted APKs (PR #2298)
* feat: patching semi-corrupted APKs

* fix: using secure temp file creation

* fix: using TWR when handling the files
2024-10-10 17:53:26 +01:00
Skylot b26abdc851 feat(plugins): get config and cache dirs for plugins 2024-09-29 21:55:05 +01:00
Skylot 0b225238fb feat: support restore of switch over string (basic case)(#2288) 2024-09-27 21:11:38 +01:00
pubiqq b5e3dcf70f feat: add the option to always use source file name as class name alias (PR #2287) 2024-09-23 22:47:08 +01:00
Skylot 603863403f fix: do not add custom passes for fallback and simple modes (#2276) 2024-09-13 21:01:19 +01:00
Skylot 1051dacb1e refactor(tests): migrate from Hamcrest to AssertJ 2024-08-11 21:55:56 +01:00
Skylot 09fa35f144 feat: allow to change config and cache dirs with env vars (#2159) 2024-04-27 21:48:42 +01:00
Andrei Kudryavtsev b85900aa3d feat: move AAB support to separate plugin (PR #2165)
* wip: finished with factories

* wip: bundleconfig.pb

* wip: jadx-aab-input, separate BundleConfig parser

* wip: removed test apks

* wip: proto xml pretty print

* wip: fixed getNamedValues NPE

* minor fixes

* spotless

* enabled zip64 for gui shadow jar

* spotless

* spotless

* reverted manifest identification since signature parsing not working at the moment

* replace static methods with new API methods

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2024-04-26 21:54:54 +01:00
Skylot f2ea6415c9 fix(cli): don't print stacktrace for incorrect options (#2140) 2024-04-20 18:06:30 +01:00
Skylot be25cbf8c2 fix: use common parser for manifest, verify app package 2024-04-20 17:37:45 +01:00
Skylot bff00d101f fix(script): add option flags, fix missing script options in help 2024-03-19 20:22:50 +00:00
Skylot a3a4fabd5a fix: store classes access flags in class set 2024-02-07 22:10:31 +03:00
Skylot 75d2e540aa refactor: add new task executor, remove task barrier (#1879) 2024-01-25 19:45:23 +00:00
bagipro e73612b4d2 feat(res): disable XML pretty print (PR #2087)
Co-authored-by: bagipro <bugi@bugi>
2024-01-22 15:01:38 +00:00
Skylot e723c245ee fix: use correct type printer in json output mode (#2053) 2023-12-23 18:46:39 +00:00
Iscle f5accc8464 feat: add support for xapk files (#1597)(PR #2064)
* feat: annotate JadxPlugin with NotNull

Allows for better Kotlin support

* feat: add support for custom resources loader

* feat: add support for xapk resources loading

* fix: rename "decode" to "load"

* refactor: annotate JadxCodeInput with NotNull

* feat: add support for xapk code loading

* feat: add xapk support to file filter

* fix code formatting

* revert NotNull annotation

* several improvements

* refactor: fix typo

---------

Co-authored-by: Skylot <skylot@gmail.com>
2023-12-21 18:46:40 +00:00
Skylot 2d28da9b0e feat: allow to set zip max entries count using env var (#1751) 2023-11-16 20:48:08 +03:00
Skylot a989fa7e64 refactor(deobf): split deobfuscation conditions (#2040) 2023-11-05 20:22:15 +00:00
nitram84 f7002c7fad feat(deobf): implement a whitelist for deobfuscation (PR #2040) 2023-11-05 20:21:41 +00:00
Skylot 19f40b8549 feat(cli): add option to show available plugins list 2023-09-27 19:44:58 +01:00
Skylot 762c2d70bd chore: fix typos 2023-09-24 18:53:39 +01:00