Skylot
03009b5159
chore: update dependencies
2026-06-17 22:32:00 +01:00
Skylot
d25eda4839
feat: new module/library for work with call graphs ( #2890 )
2026-06-17 22:32:00 +01:00
Skylot
59003bdb1f
refactor: use MethodInfo for unresolved methods usage, improve related code
2026-06-17 22:31:57 +01:00
Ananya
9d4babcdce
fix: keep all dimensions for anewarray of an array element type (PR #2887 )
2026-06-14 20:50:06 +00:00
Skylot
8c28a8530e
fix(gui): improve dot graph viewer, CFG generation simplified
2026-06-02 22:00:16 +01:00
Skylot
6775cc5a93
fix(gui): improve code tabs, sync and related code
2026-05-30 21:20:14 +01:00
Muhammad Mufti Ismail
e648e60af9
fix(quark): change from 'virtualenv' to 'venv' (PR #2879 )
...
Refactor virtual environment creation command
moving from virtualenv to venv
2026-05-23 20:44:12 +00:00
mbv06
e6b7db35c1
feat(gui): handle pasted file lists in file chooser (PR #2876 )
2026-05-15 19:28:46 +00:00
Skylot
c3f7027bdd
fix: resolve duplicated error attr in fallback codegen, allow to set whole attr list at once ( #2842 )
2026-05-11 17:09:23 +01:00
Skylot
2fe95da570
fix: workaround for duplicated variables names index increment ( #2868 )
2026-05-09 20:51:02 +01:00
Ruffalo Lavoisier
62fa2735dc
feat(gui): collapse single-child directory chains in resource tree (PR #2866 )
2026-05-09 16:39:22 +00:00
xxr0ss
bce6611aaf
feat(gui): add "copy reference" to context menu (PR #2863 )
...
Co-authored-by: xxr0ss <xxr0ss@users.noreply.github.com >
2026-05-01 21:30:27 +01:00
ewt45
21aa90c5d1
fix: cover more situations for SwitchOverString (PR #2860 )
2026-04-27 18:36:06 +00:00
Skylot
55e79fb70f
fix(res): use safe number parsing for android manifest, refactor params object ( #2857 )
2026-04-25 20:06:02 +01:00
Skylot
044c75ab9f
fix(gui): ensure all fonts are 'composite' ( #2856 )
2026-04-25 19:26:27 +01:00
Skylot
97fa8ff210
fix: build correct file path for class from default package ( #2854 )
2026-04-20 19:32:57 +01:00
Skylot
27c283fb11
fix: limit 'if' region out block to current scope ( #2791 )
2026-04-19 21:32:58 +01:00
Skylot
bd1c3fffde
fix: improve handler path check for regions
2026-04-19 20:32:14 +01:00
Skylot
169ad2901f
feat: add partial region visitor with result return
2026-04-14 20:59:02 +01:00
Skylot
869422b424
refactor: replace recursion with loop for region traversal
2026-04-14 20:57:41 +01:00
Ruffalo Lavoisier
ccc4164d54
fix: harden XML parser in FileTypeDetector against XML bomb DoS (PR #2851 )
2026-04-14 18:15:34 +00:00
dependabot[bot]
b61642a646
build(deps): bump actions/github-script from 8 to 9 ( #2849 )
...
Bumps [actions/github-script](https://github.com/actions/github-script ) from 8 to 9.
- [Release notes](https://github.com/actions/github-script/releases )
- [Commits](https://github.com/actions/github-script/compare/v8...v9 )
---
updated-dependencies:
- dependency-name: actions/github-script
dependency-version: '9'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-13 18:41:27 +00:00
dependabot[bot]
189e4181de
build(deps): bump softprops/action-gh-release from 2 to 3 ( #2848 )
...
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release ) from 2 to 3.
- [Release notes](https://github.com/softprops/action-gh-release/releases )
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md )
- [Commits](https://github.com/softprops/action-gh-release/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: softprops/action-gh-release
dependency-version: '3'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-13 18:41:16 +00:00
Skylot
5b960db77e
feat(gui): open single loaded class after load
2026-04-10 22:17:15 +01:00
Skylot
3119e8c893
fix: disable ternary mod for duplicated blocks ( #2844 )
2026-04-10 21:56:11 +01:00
Skylot
f95c5e8f39
fix: limit ternary wrap to one level ( #2844 )
2026-04-09 20:50:40 +01:00
Skylot
1e908f7af3
refactor: add ErrorProne and NullAway checks, fix some issues
2026-04-06 21:13:08 +01:00
Jan S.
7ce40baacb
fix(gui): NullPointerException when changing line wrap mode (PR #2843 )
2026-04-05 18:48:49 +01:00
Skylot
7d689a85ea
fix: remove result in wrapped insntructions ( #2835 )
2026-04-02 22:29:30 +01:00
Skylot
c7a162d827
fix: resolve minor decompilation issues ( #2835 )
2026-04-02 21:22:35 +01:00
Skylot
325b3ac991
fix: use correct args copy/replace in wrapped insns ( #2835 )
2026-04-01 20:19:56 +01:00
Skylot
9a8a11619b
chore: fix build warnings in java doc comments
2026-04-01 20:18:06 +01:00
Jan S.
7ae6bd737c
fix(build): set *nix executable permissions on start scripts (PR #2838 )
2026-03-30 19:03:04 +01:00
ewt45
57fd9b5bdb
fix(gui): add file end line feed for exported code (PR #2836 )
...
chore: add file end line feed for export code
2026-03-29 20:07:04 +01:00
Skylot
cdd5bf536d
fix(xapk): support files in sub-dirs in xapk ( #2834 )
2026-03-27 21:50:37 +00:00
Skylot
dcce3aaa39
fix: use correct property for OS arch checks ( #2830 )
2026-03-24 20:17:35 +00:00
John
b3d86ae908
fix: resolve class/package name conflicts on case-insensitive filesystems (PR #2828 )
...
* Fix: resolve class/package name conflicts on case-insensitive filesystems
**RenameVisitor**
- Added package-level conflict detection for case-insensitive filesystems:
when two packages differ only by case (e.g. com.Example vs com.example),
rename the conflicting one and loop until the new name is also unique
- Added class-level conflict detection (same pattern): when two classes in
the same package differ only by case (e.g. Sink vs sink), rename the
conflicting one to prevent file overwrite on Windows export
**Tests**
- Added TestCaseSensitivePkgChecks: verifies package rename when packages
differ only by case; fixed smali data (2.smali changed Bar→Foo to create
a genuine path conflict under case-insensitive FS)
- Added TestCaseSensitiveClassInPkgChecks + smali fixtures: verifies class
rename when two classes in a named package differ only by case
(com.example.User vs com.example.user)
* Apply suggestions from code review
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
* Apply suggestions from code review
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
---------
Co-authored-by: john <johnwsa@qq.com >
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2026-03-23 20:42:25 +00:00
dependabot[bot]
8b7d3f497e
build(deps): bump gradle/actions from 5 to 6 (PR #2829 )
...
Bumps [gradle/actions](https://github.com/gradle/actions ) from 5 to 6.
- [Release notes](https://github.com/gradle/actions/releases )
- [Commits](https://github.com/gradle/actions/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: gradle/actions
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-23 20:32:02 +00:00
Skylot
462e582bb8
chore: update gradle and dependencies
2026-03-22 21:15:36 +00:00
Skylot
14a7b63707
chore: apply common code style
2026-03-22 20:48:27 +00:00
Skylot
4051a50146
fix: stop type inference on exception (prevent endless loop)
2026-03-22 19:41:26 +00:00
Skylot
b3db337abd
feat: use queue instead of recursion for type updates
2026-03-22 19:10:42 +00:00
eason
15ea9a56b9
fix: handle null bounds in WindowLocation to prevent NPE on dialog dispose (PR #2826 )
...
* fix: handle null bounds in WindowLocation to prevent NPE on dialog dispose
The equals(), hashCode(), and toString() methods in WindowLocation
could throw NullPointerException when bounds is null. This happens
when a dialog window is disposed before its bounds are fully
initialized (e.g., on macOS when closing the search dialog).
Use Objects.equals()/Objects.hashCode() for null-safe comparisons
and add a null guard in toString().
Fixes #2571
* additional null checks and null annotations
---------
Co-authored-by: easonysliu <easonysliu@tencent.com >
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2026-03-18 19:05:49 +00:00
Skylot
165ae24722
fix: support enum restore for constructor without args ( #2821 )
2026-03-16 22:25:26 +00:00
Skylot
11b38ffed2
fix(gui): use localized label for code cache preferences
2026-03-16 19:49:02 +00:00
Hd
81dfac6d83
fix(gui): localize code cache mode labels (PR #2825 )
...
* fix(gui): localize code cache mode labels
* chore: fix spotless apply
2026-03-16 19:42:24 +00:00
peasoft
a3bd3b09fd
feat(gui): add mimetype for desktop file
2026-03-14 18:31:04 +00:00
peasoft
13d306024a
fix(gui): resolve "launchScriptPath" is null
2026-03-14 18:31:04 +00:00
Skylot
ff64da705c
fix: remove useless PHI for duplicate moves ( #2813 )
2026-03-13 19:11:16 +00:00
Skylot
00196e412b
fix(gui): move scripts leftover code, save tree state on script run
2026-03-07 19:54:32 +00:00
Skylot
06c4fea4d2
fix(api): allow to create input category node even if no matching files found ( #2806 )
2026-03-07 19:54:32 +00:00
小明
69fd88d883
fix(gui): update zh_tw translation (PR #2818 )
2026-03-07 19:54:14 +00:00
Ananya Sharma
f2f145019d
fix: handle Kotlin 1.9+ $ENTRIES pattern in enum restoration (PR #2814 )
...
* fix: handle Kotlin 1.9+ $ENTRIES pattern in enum restoration
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
* keep $ENTRIES field, it still used in getEntries() method
---------
Co-authored-by: clawdbot-silly-waddle <clawdbot-silly-waddle@users.noreply.github.com >
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2026-03-07 19:37:12 +00:00
dependabot[bot]
7b3563fb62
build(deps): bump actions/upload-artifact from 6 to 7 (PR #2816 )
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 6 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v6...v7 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: '7'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-04 20:07:59 +00:00
dependabot[bot]
22ee9a216c
build(deps): bump actions/download-artifact from 7 to 8 (PR #2815 )
...
Bumps [actions/download-artifact](https://github.com/actions/download-artifact ) from 7 to 8.
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](https://github.com/actions/download-artifact/compare/v7...v8 )
---
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-version: '8'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-04 20:07:43 +00:00
Hd
06b4467fdc
fix(gui): update zh_CN translation (PR #2812 )
2026-03-04 20:07:19 +00:00
Jan S.
ff778ab372
fix(gui): use UI thread for adding logcat messages ( #2811 )
...
* fix(gui): use UI thread for adding logcat messages
other minor/logging improvements for debugger and adb connection
* checkstyle
2026-03-04 20:06:30 +00:00
Jan S.
ff4dde62ae
fix(gui): use UI thread for refreshStackFrameList in debugger view (PR #2807 )
...
* fix(gui): use UI thread for refreshStackFrameList in debugger view
* call `resetAllDebuggingInfo` also from UI thread
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2026-02-27 16:49:04 +00:00
Skylot
468b52342d
fix(cli): in 'progress' log mode show issues from input plugins ( #2803 )
2026-02-25 19:44:50 +00:00
Jan S.
09d39de604
fix(gui): make the Split view checkbox correctly toggle between both modes (PR #2801 )
2026-02-24 19:58:40 +00:00
Skylot
eb079bd435
fix(gui): use UI thread for scroll in code ( #2798 )
2026-02-23 21:04:41 +00:00
Skylot
d1b1fc0ab6
fix(gui): stop token process on NULL token in JadxTokenMaker ( #2798 )
2026-02-23 20:05:56 +00:00
Skylot
859d479569
chore: remove 'jadx-script-kotlin'
2026-02-22 15:53:02 +00:00
Skylot
b0954e9620
fix(gui): resolve possible NPE during project data loading ( #2794 )
2026-02-18 22:28:36 +00:00
Skylot
dfe1d0477d
fix(script): update imports in example scripts ( #2795 )
2026-02-18 22:28:04 +00:00
Skylot
a1aa6d7ecd
fix: insert generic casts for variable assigned from fields with known types ( #2776 )
2026-02-17 20:55:23 +00:00
Skylot
6f01e9f76b
fix(gui): update usage file data version (was changed in PR #2784 )
2026-02-15 18:02:26 +00:00
gordon-f0
be8b96280e
feat: graph views, code pane sync, and more (PR #2784 )
...
* snapshot 219
* revert non-working string searcher
* fix(gui): fix illegal ':' character in path when exporting resources.arsc/res
* fix(gui): use resource short name when exporting a folder via context menu
* fix(gui): use new resource class for files in arsc (#2771 )
* fix(gui): limit tabs title length, fix tooltips (#2771 )
* resolve issues with script code area after merge
---------
Co-authored-by: Jan S. <jpstotz@users.noreply.github.com >
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2026-02-13 19:02:36 +00:00
Skylot
2a2806ebd7
feat(plugins): allow to use .zip as plugin artifact (with jars inside)
2026-02-12 19:38:34 +00:00
Skylot
c7a0f7a092
feat: make jadx-script-kotlin plugin external
2026-02-12 19:38:33 +00:00
Jan S.
9710ebe09a
fix(res): back to the old correct resource ID calculation (PR #2788 )
...
fix: back to the old correct resourceID calculation
2026-02-12 17:27:53 +00:00
Jan S.
f0da486703
fix(gui): go to main activity and application class when class name was renamed by deobfuscator (PR #2779 )
...
fix(gui): go to main activity and application class when class name was renamed by deobfuscator
2026-02-08 18:21:50 +00:00
Jan S.
925503ba04
fix(res): prevent problems arising by parsing duplicate resource entries from resources.arsc ( #2775 )(PR #2777 )
...
* fix(core): prevent resource name collisions by reading the same resource multiple times
* fix(core): prevent resource names getting longer by every rename operation
* initialize HashSet size properly
* formatting
2026-02-07 17:54:50 +00:00
Ruffalo Lavoisier
039900a278
fix(zip): check uncompressed size exceeds the maximum value of an integer (PR #2773 )
...
* check whether it exceeds the maximum value of an integer
---------
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2026-02-04 20:29:16 +00:00
Skylot
d73455c689
build(github): remove CodeQL action
2026-02-02 21:57:46 +00:00
Skylot
07b3e5a7c0
fix(gui): limit tabs title length, fix tooltips ( #2771 )
2026-02-02 21:09:15 +00:00
Skylot
c1fc73a524
fix(gui): use new resource class for files in arsc ( #2771 )
2026-02-01 20:01:17 +00:00
Jan S.
0d982e9709
fix(gui): use resource short name when exporting a folder via context menu
2026-02-01 18:21:19 +00:00
Jan S.
e6b38e172a
fix(gui): fix illegal ':' character in path when exporting resources.arsc/res
2026-02-01 18:21:19 +00:00
Skylot
331c4aaa5e
fix(gui): load class code before resolving jump position to get corrent value
2026-01-26 20:13:38 +00:00
Skylot
4e82233cbc
fix(java-input): fix dup2_x1 stack to regs conversion for wide types ( #2755 )
2026-01-26 20:13:38 +00:00
Skylot
ad267e1618
fix: improve switch over string restore ( #2359 )
2026-01-21 20:07:58 +00:00
ewt45
54265e34e5
fix: avoid more false positive throws (PR #2752 )
...
Update MethodThrowsVisitor.java
2026-01-21 18:43:00 +00:00
ewt45
c677901aa5
fix(gui): use FontUtils.getCompositeFont() that supports CJK (PR #2751 )
...
fix: use FontUtils.getCompositeFont() that supports CJK
2026-01-20 17:58:08 +00:00
ewt45
220a2198a1
fix: add more checks to better find handler's end (PR #2749 )
2026-01-19 17:39:03 +00:00
Skylot
b725dd18b6
fix: terminate type inference on first stack overflow ( #2744 )
2026-01-18 17:53:07 +00:00
Jan S.
a0466d4494
fix: speed up file path security checks (PR #2745 )
...
chore: Speed up path traversal check by using java.nio.file
2026-01-16 18:36:48 +00:00
Skylot
ae1a5e9277
fix: improve codegen methods for custom decompilation mode
2026-01-12 19:47:52 +00:00
Skylot
018c20187d
fix: keep wide upcast for arith instructions ( #2730 )
2026-01-12 18:40:01 +00:00
Skylot
add11dff1d
fix: add missing level info for jadx code comments ( #2737 )
2026-01-11 18:44:05 +00:00
Jan S.
005a59668c
fix(res): as workaround use INVALID_STRING_PLACEHOLDER when string offset is is negative ( #2729 )(PR #2739 )
...
core: as workaround use INVALID_STRING_PLACEHOLDER when string offset is negative
2026-01-07 16:22:18 +00:00
Deleted user
8f727325d6
fix(cli): distinguish JadxCLI error code (PR #2734 )
2026-01-04 16:28:31 +00:00
Skylot
7bbb58863b
fix(gui): don't init already loaded plugins while collecting options ( #2727 )
2025-12-24 20:28:21 +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
85a7aaa9fb
fix(gui): do not enforce new nodes method for backward compatibility
2025-12-23 20:48:40 +00:00
Skylot
a3df83e60f
feat(gui): report plugin exceptions to plugin github project
2025-12-23 20:41:44 +00:00
Skylot
b3be2794a0
fix(plugins): reduce plugins-list update checks
2025-12-22 21:53:54 +00:00
Skylot
02ea3be8f2
fix(plugins): improve errors handling and reporting ( #2597 )
2025-12-22 21:53:54 +00:00
Skylot
b78745a87b
fix(gui): reset selected tab on last tabs closed
2025-12-22 21:53:37 +00:00
Skylot
01af6481f6
fix(gui): handle config save error, don't write partial config
2025-12-21 19:33:21 +00:00
Skylot
0c3e6e77cd
feat(gui): change fonts size with UI zoom, use FlatLaf fonts bundle
2025-12-20 20:18:31 +00:00
Skylot
8b48219dc3
chore: update dependencies
2025-12-19 18:57:41 +00:00
dependabot[bot]
80187c7e29
build(deps): bump actions/upload-artifact from 5 to 6 ( #2724 )
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 21:59:33 +00:00
dependabot[bot]
22f7b40151
build(deps): bump actions/download-artifact from 6 to 7 ( #2725 )
...
Bumps [actions/download-artifact](https://github.com/actions/download-artifact ) from 6 to 7.
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](https://github.com/actions/download-artifact/compare/v6...v7 )
---
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-version: '7'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 21:59:16 +00:00
Skylot
3e709d6693
feat(cli): implement config file load and save ( #1731 )
2025-12-15 21:07:10 +00:00
Skylot
1aa16c4664
feat(gui): add option for UI zoom factor ( #2720 )
2025-12-10 18:43:54 +00:00
Skylot
9fba709687
chore: update some dependencies
2025-12-08 20:11:16 +00:00
RedArms
6b61599114
fix(xapk): use stream copy to prevent OOM on large files ( #2619 ) (PR #2719 )
2025-12-08 19:00:57 +00:00
Skylot
2829e284f3
fix: prevent endless loop in region maker on dead code with loops ( #2715 )
2025-12-04 20:45:02 +00:00
RedArms
27b15aeb1c
fix(gui): resolve NPE with smali breakpoint ( #2717 ) (PR #2718 )
...
* fix(gui): resolve exception in search dialog on project reload (#2714 )
* Revert "fix(gui): resolve exception in search dialog on project reload (#2714 )"
This reverts commit 74c52a8884 .
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-12-04 19:25:45 +00:00
Skylot
74c52a8884
fix(gui): resolve exception in search dialog on project reload ( #2714 )
2025-12-03 19:38:27 +00:00
Skylot
39e7b82353
fix(gui): in comment dialog insert new line at current caret position ( #2706 )
2025-12-03 19:32:52 +00:00
Skylot
365e258180
fix: resolve edge cases for select best classes from duplicates ( #2701 )
2025-12-03 19:21:19 +00:00
Midori Kochiya
ea68024851
fix(dex-input): use length in header for checksum, fix error in Dex v41 (PR #2711 )
...
* Use length in header for checksum, fix error in Dex v41
* check if length can be read, use utils method to read int values
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-12-02 19:14:51 +00:00
Skylot
56ae4a6048
fix: refactor and improve class duplicates removal ( #2701 )
2025-11-29 22:51:27 +03:00
Histausse
1d831d82d4
feat: select better class from duplicates ( #2701 )(PR #2702 )
...
* select the right class in in case of duplicate
* select correct class in gui in case of duplication
* fix code format
---------
Co-authored-by: Jean-Marie 'Histausse' Mineau <histausse@protonmail.com >
2025-11-29 19:50:49 +00:00
dependabot[bot]
4c760f1029
build(deps): bump actions/checkout from 5 to 6 ( #2703 )
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-29 16:26:03 +00:00
Skylot
cf0101f13d
fix: support 'break' extract for nested 'if' ( #2697 )
2025-11-22 22:20:32 +00:00
Skylot
748f45b386
chore: update dependencies
2025-11-21 20:29:20 +00:00
Skylot
9e278efc5c
chore: update gradle
2025-11-21 20:23:54 +00:00
Skylot
cc1beab0b5
fix(gui): use correct threads for code from close and reload actions ( #2684 )
2025-11-21 20:16:16 +00:00
Skylot
2fba204b33
fix: correctly handle variable in ternary transform
2025-11-20 20:30:10 +00:00
Skylot
9bf079aad4
fix: improve common 'break' extract checks ( #2697 )
2025-11-20 19:21:58 +00:00
Skylot
6aeaf6aca9
fix: extract common switch break, remove unreachable ( #2697 )
2025-11-13 20:48:51 +00:00
nitram84
7ea478e18a
fix: respect arg offset for type var mapping on invoke (PR #2698 )
...
fix: respect arg offset for type var apping on invoke
2025-11-11 22:01:27 +00:00
Skylot
ef99412de1
fix: keep generics while applying debug info ( #2687 )
2025-11-07 20:27:29 +00:00
Jan S.
cda1b1ad2c
fix(gui): prevent unlimited recursion in text search ( #2685 ) (PR #2694 )
2025-11-06 20:34:42 +00:00
nitram84
05863881f8
fix: detect more for-each loops (also prevent issues with missing generics types) (PR #2689 )
2025-11-05 21:04:22 +00:00
Skylot
3e208509e0
fix(gui): rework background executor to reduce delay for short tasks
2025-11-05 19:19:38 +00:00
Skylot
bd75baef56
fix(gui): split loading and UI update for code area ( #2682 )
2025-11-04 20:53:02 +00:00
Skylot
d191f62b8d
fix: handle OutOfMemoryError to correctly halt processing ( #2676 )
2025-10-29 21:03:58 +00:00
Skylot
f17c46224d
fix: improve decoding errors handling ( #2676 )
2025-10-29 19:08:18 +00:00
Jan S.
e008e818b0
fix: enhancements for abnormal situations (PR #2679 )
...
* Allow to disable log panel (OFF)
* Limit the maximum number of garbage collector threads
2025-10-29 19:06:32 +00:00
JustFor
560b1a9ca7
fix(gui): update Chinese localization for various menu items (PR #2673 )
...
translate new texts and update some old texts.
2025-10-27 18:23:55 +00:00
dependabot[bot]
06f113f0a6
build(deps): bump actions/download-artifact from 5 to 6 ( #2675 )
...
Bumps [actions/download-artifact](https://github.com/actions/download-artifact ) from 5 to 6.
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](https://github.com/actions/download-artifact/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-27 18:16:57 +00:00
dependabot[bot]
48a0073002
build(deps): bump actions/upload-artifact from 4 to 5 ( #2674 )
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 4 to 5.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-27 18:15:23 +00:00
Jan S.
88e90722ae
fix: more file extensions added for file type detection (PR #2670 )
2025-10-24 19:49:47 +01:00
Skylot
1becfa9977
fix(gui): use simple token maker as default to avoid parsing error ( #2669 )
2025-10-23 22:21:30 +01:00
Skylot
20ed13936a
build(github): use latest LTS Java 25
2025-10-21 22:46:47 +01:00
Skylot
421de675a2
chore: update dependencies
2025-10-21 22:04:07 +01:00
Skylot
06a118c104
fix(gui): handle syntax parsing errors during search ( #2669 )
2025-10-21 22:02:41 +01:00
Skylot
2e93656007
fix: catch all exceptions in type update ( #2668 )
2025-10-21 20:37:43 +01:00
dependabot[bot]
c8c4adb60c
build(deps): bump github/codeql-action from 3 to 4 (PR #2666 )
...
Bumps [github/codeql-action](https://github.com/github/codeql-action ) from 3 to 4.
- [Release notes](https://github.com/github/codeql-action/releases )
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/github/codeql-action/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: github/codeql-action
dependency-version: '4'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-20 22:34:53 +01:00
Skylot
f2e78fe800
fix(tests): use correct file separator to load resources
2025-10-14 23:31:34 +01:00
Skylot
7172f8df2d
chore: update dependencies
2025-10-14 22:56:59 +01:00
Skylot
d7c6be5664
fix: resolve rename of inner class using full name ( #1997 )
2025-10-14 22:56:59 +01:00
Skylot
654cf5e4fb
fix(smali-input): use synced list for threaded processing, improve inner classes handling
2025-10-14 22:56:59 +01:00
wech71
bf2d5b5e2e
fix(kotlin-metadata): upgrade to kotlin 2.2 metadata library (PR #2655 )
...
* fix Metadata Bytes String reading and upgrade to kotlin 2.2 metadata library which is now finalized and has therefore renamed from kotlinx.metadata to kotlin.metadata
* add test with sample java class
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-10-12 00:16:57 +01:00
wech71
0f495afc99
fix(java-input): support Java modified UTF-8 strings (PR #2654 )
...
* [core] fix jadx.plugins.input.java.data.ConstPoolReader.parseString() error with Kotlin Annotation of byte array as a String to follow jvms-4.4.7 rules for encoding annotation strings in class files
* move decode method into utility class, add test, fix code style
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-10-11 23:57:00 +01:00
dependabot[bot]
5f1985f281
build(deps): bump gradle/actions from 4 to 5 (PR #2649 )
...
Bumps [gradle/actions](https://github.com/gradle/actions ) from 4 to 5.
- [Release notes](https://github.com/gradle/actions/releases )
- [Commits](https://github.com/gradle/actions/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: gradle/actions
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-06 22:29:23 +01:00
o0kam1
2a574d45d5
feat: support '.apks' files (PR #2647 )
2025-09-29 18:26:17 +01:00
Skylot
3ee476c6b6
build: update 'beryx.runtime' gradle plugin to fix 'win with jre' build
2025-09-28 17:00:52 +01:00
huqiuser
fd3d488016
fix(aab-input): correct check for '.aab' file (PR #2646 )
...
fix: Error decode xml (manifest) when parsing an APK file containing '.aab' in the file path
Co-authored-by: licheng <licheng@cmcm.com >
2025-09-28 16:18:09 +01:00
Skylot
9898cbb4a1
fix: add missing field code annotation for enum fields in switch-case
2025-09-22 22:12:29 +01:00
Skylot
104a0f0636
fix: resolve race condition in task executor
2025-09-22 22:12:29 +01:00
Skylot
e58b77267e
build: fix distribution artifacts sharing between projects
2025-09-22 22:12:29 +01:00
Skylot
73913651b4
chore: update gradle and dependencies
2025-09-21 19:55:11 +01:00
pubiqq
f01e6aa505
chore: update android attrs (platform-36_r02) (PR #2638 )
2025-09-17 19:19:15 +01:00
nitram84
d9da6a7f89
fix: avoid false positive throws (PR #2636 )( #2475 )
2025-09-15 00:08:06 +01: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
dependabot[bot]
2cd112cd3d
build(deps): bump actions/github-script from 7 to 8 ( #2628 )
...
Bumps [actions/github-script](https://github.com/actions/github-script ) from 7 to 8.
- [Release notes](https://github.com/actions/github-script/releases )
- [Commits](https://github.com/actions/github-script/compare/v7...v8 )
---
updated-dependencies:
- dependency-name: actions/github-script
dependency-version: '8'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-08 19:20:27 +01:00
dependabot[bot]
43358643be
build(deps): bump actions/setup-java from 4 to 5 (PR #2614 )
...
Bumps [actions/setup-java](https://github.com/actions/setup-java ) from 4 to 5.
- [Release notes](https://github.com/actions/setup-java/releases )
- [Commits](https://github.com/actions/setup-java/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/setup-java
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-29 20:41:47 +01:00
dependabot[bot]
1f0d3dac0f
build(deps): bump actions/download-artifact from 4 to 5 ( #2602 )
...
Bumps [actions/download-artifact](https://github.com/actions/download-artifact ) from 4 to 5.
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](https://github.com/actions/download-artifact/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-12 09:52:54 +01:00
dependabot[bot]
da95a8ae17
build(deps): bump actions/checkout from 4 to 5 ( #2603 )
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-12 09:51:04 +01:00
Andrei Kudryavtsev
da3ac6bff0
fix(gui): various tabs related fixes (PR #2595 )
...
* 1. Fix tab rendering when preview state changed
* 2. Fix selected tab after closing currently active tab
* 3. Fix tab selection when pinning currently active tab
* 4. Make current preview tab permanent on double click
* 5. Fix preview tab font not reloading on settings change
2025-08-04 18:09:22 +01:00
beaverxsheet
bdbeaff8f0
fix: use proper newlines when generating CFG (PR #2592 )
...
fixing new lines in the cfg
2025-08-04 18:03:11 +01:00
Jan S.
b1f48f1db1
fix(gui): fix NullPointerException in copyAllSearchResults ( #2580 ) (PR #2581 )
2025-07-24 18:37:47 +01:00
Skylot
5b09378614
fix: use 'dev.dirs' JNI implementation only on x86-64 ( #2578 )
2025-07-23 19:26:14 +01:00
Skylot
b64c93160b
refactor: move system info class to common app lib
2025-07-23 19:24:26 +01:00
Skylot
58c4f56a71
feat(gui): allow view and edit input smali files
2025-07-19 22:16:19 +01:00
Skylot
3d11d1fa87
fix(gui): resolve NPE on code area close
2025-07-19 22:14:30 +01:00
Skylot
0d158592e4
chore: update gradle
2025-07-19 19:14:24 +01:00
Skylot
0c253f9a1f
chore: update dependencies
2025-07-19 19:08:18 +01:00
Loyie King
f565178c8c
feat(aab): enhance AAB parsing (PR #2557 )
...
* fix(aab): resources.pb always NPE
* fix(aab): resources.pb shows wrong resources id
* feat(aab): add parser for native.pb, assets.pb, dependencies.pb
* apply code formating
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-07-07 21:08:12 +01:00
Skylot
f6d13f1860
fix(cli): add missing '-XX:+IgnoreUnrecognizedVMOptions' JVM flag ( #2554 )
2025-07-06 17:30:50 +01:00
TinyServal
d58c9ac926
fix(gui): minor UI fixes (PR #2549 )
...
* fix(gui): use system menu bar on macOS
* fix(gui): font consistency in AboutDialog
* fix(gui): fix horizontal scrolling speed in CommonSearchDialog
* fix(gui): slightly increase debounce timer to reduce UI flickering
* fix(gui): disable tab scroll wrap-around behavior
2025-07-02 20:37:16 +01:00
Skylot
7f9d51b9b1
fix(zip): allow to load zip with duplicate names in entries
2025-06-29 20:44:17 +01:00
Skylot
432e49df03
fix(gui): disable debugger action if project not loaded ( #2547 )
2025-06-29 19:48:10 +01:00
Skylot
b530c234f3
chore: update gradle
2025-06-29 19:48:10 +01:00
Skylot
181dcf7b4f
chore: update dependencies
2025-06-29 19:48:10 +01:00
xiaojye
dc4dcb2bd0
refactor(gui): improve menu icon, such as 'Select in Tree' and 'Go to AndroidManifest.xml' buttons (PR #2543 )
2025-06-26 20:48:23 +01:00
Jan S.
74c396448e
fix(gui): prevent IndexOutOfBoundsException in MethodSearchProvider (PR #2542 )
2025-06-20 22:37:27 +01:00
Skylot
cb9693a9d1
fix: correct hex format for negative numbers ( #2531 )
2025-06-19 22:49:59 +01:00
Mart Lintz
5d13acc6f3
chore(export): add missing ExpiringTargetSdkVersion in #2533 (PR #2538 )
2025-06-17 22:38:02 +01:00
Skylot
c04dddfa81
fix(cli): improve memory usage in jadx-cli ( #2524 )
2025-06-16 21:00:01 +01:00
Jan S.
1bb645d676
fix: correct loading for plain text XML files (PR #2537 )
2025-06-16 19:26:35 +01:00
Jan S.
ecb597a461
chore(export): disable targetSDKVersion checks in AndroidStudio (PR #2533 )
...
chore: disable targetSDKVersion warnings when opening exported project in AndroidStudio
2025-06-11 23:13:02 +03:00
Akexorcist
46cd3b5597
feat(export): use compileSdkVersion from manifest, update AGP to 8.10.1, other improvements (PR #2528 )
...
* chore(core): export to android project with AGP 8.10.1
* fix code format
* fix export template test
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-06-07 20:09:29 +01:00
Jeroen Beckers
d523f1b15e
fix(gui): use var instead let for class variable in Frida script (PR #2527 )
...
Co-authored-by: Jeroen Beckers <dauntless@dauntless.be >
2025-06-07 19:53:19 +01:00
skylot
8030c2f84e
feat(gui): new search options to search in text or binary resources (PR #2526 )
...
* search in text or binary resources
* load matching tab for scroll to pos in binary panel, treat unknown files as binary in search
2025-06-07 19:23:08 +01:00
Ruffalo Lavoisier
47224dc599
fix(gui): remove duplicate class of Frida snippet (PR #2525 )
...
fix duplicate class of frida snippet
2025-06-03 17:52:06 +01:00
Yaroslav
d492628bfe
fix(gui): workaround for wrap layout repaint issue in search dialog (PR #2521 )
...
* fix(gui): fixed incorrectly handles full window repaint in search dialog
* fix: fix spotless check
2025-06-02 21:45:46 +01:00
Skylot
13e934ce4d
build: update java to 24 for release workflow
2025-06-02 19:54:06 +01:00
Skylot
7b54c3ae70
fix(gui): prevent UI thread freeze on plugin install/uninstall
2025-06-01 20:25:18 +01:00
Skylot
b82791706a
fix(gui): redirect plugins menu action to show plugins settings page
2025-06-01 18:55:11 +01:00
Skylot
e51a7fe417
fix(gui): lazy load hex viewer content
2025-06-01 17:01:10 +01:00
Skylot
cf96fdec59
fix: add arsc file name prefix only in jadx-gui ( #2373 )
2025-05-31 20:12:54 +01:00
Skylot
3374f9b64a
fix: use resource table file name as prefix in sub files ( #2373 )
2025-05-29 23:18:32 +01:00
Skylot
6b54cde89c
fix: use wrap layout for options in search dialog, add size limit option
2025-05-29 22:44:21 +01:00
Skylot
59b560b553
fix: lazily create dirs in default file getter implementation
2025-05-29 17:59:26 +01:00
Skylot
8b08ac3806
fix: wrap MethodThrowsVisitor insns processing in try/catch ( #2441 )
2025-05-27 20:01:45 +01:00
Skylot
d9d4180581
feat: use parallel jobs to delete files in directory ( #2436 )
2025-05-27 20:01:45 +01:00
Skylot
33f93ddc8a
feat: move variable name apply from codegen to new pass ( #2422 )
2025-05-26 23:20:45 +01:00
Yaroslav
bcd0c949dc
feat(gui): use list component for recent projects on start page (PR #2513 )
...
* feat(gui): use list component witch recent projects on start page
* fix: spotless check
* move classes into one package and some minor changes
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-05-25 20:35:35 +01:00
Yaroslav
fc0f1f9a1c
fix(gui): validate extensions list in file dialog (PR #2515 )
...
* fix(gui): fixed export file without extensions (close #2514 )
* don't add null extensions
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-05-25 20:23:36 +01:00
Yaroslav
abd64007e2
fix(gui): validate hex address in GotoAddressDialog (PR #2512 )
...
chore: use check if entered valid hex address from GotoAddressDialog & make error style search field if hex search value not valid in hex viewer
2025-05-24 23:00:18 +01:00
Skylot
fb02e32a6a
chore: don't use nullable annotations from RxJava
2025-05-24 22:16:10 +01:00
Skylot
f33a2e4768
fix: for static synchronized methods remove top synchronized block ( #2493 )
2025-05-24 22:04:32 +01:00
Yaroslav
3d8e5e5851
chore: migrate from old unsupported rxjava2 to rxjava3 (PR #2511 )
2025-05-24 21:56:23 +01:00
Yaroslav
646ee2d963
fix(gui): minor improved search dialog & small refactor for search fields (PR #2510 )
...
* fix(gui): minor improved search dialog & small refactor for search fields
* fix: removed unused key string
* fix(gui): added icon for active tab in SearchDialog
2025-05-24 21:04:59 +01:00
Jan S.
b6f27d8a1a
feat(zip): provide direct InputStream of ZIP entries (PR #2509 )
...
* chore: provide direct InputStream of ZIP entries
* use limited stream, return bytes without using stream
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-05-24 20:36:10 +01:00
Skylot
97d04edb01
fix(xapk): new implementation to reduce zip unpack and fix NPE ( #2501 )
2025-05-24 00:09:29 +01:00
Yaroslav
2486c981a8
fix(gui): improve colors in usage tree, some UI fixes (PR #2506 )
...
* fix(gui): refactor code in UsageDialogPlus
* fix(gui): added padding between buttons in package exclusion dialog & fixed crash
* fix(gui): added padding between buttons in settings dialog
* fix: fix javadoc
* fix: fix javadoc
* fix: fix javadoc
2025-05-23 23:15:16 +01:00
MewtR
b7a8a2879e
feat(gui): add option to disable the tooltip that pops up on hover (PR #2505 )
...
feat(gui): add option to disable the tooltip that pops up on hover
2025-05-23 22:08:06 +01:00
Yaroslav
092e897104
fix(gui): fix rename package behaviors (PR #2500 )
...
* fix(gui): fix rename package behaviors
* disable rename for default and synthetic packages
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-05-22 23:26:39 +01:00
Yaroslav
a0a9f7fd41
feat(gui): notify user if code has non-displayable character with current font (PR #2490 )
...
* feat(gui): notify user, if code has non-displayable character in current font (fix #621 )
* fix(gui): improve check showing undisplayed chars on current font
* fix code style
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-05-22 23:05:05 +01:00
Little Hour Y
00f0f5547b
fix(gui): using actual tree in usage tree dialog (PR #2503 )
...
* A tree - shaped usage rendering scheme has been added
* A tree - shaped usage rendering scheme has been added - i18n update
* A tree - shaped usage rendering scheme has been added - Enhance the interactive experience
* A tree - shaped usage rendering scheme has been added - Jtree Render
---------
Co-authored-by: y <y@a.com >
2025-05-22 22:02:31 +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
Little Hour Y
d0351a88ba
feat(gui): a tree structure usage search (PR #2498 )
...
* A tree - shaped usage rendering scheme has been added
* A tree - shaped usage rendering scheme has been added - i18n update
---------
Co-authored-by: y <y@a.com >
2025-05-20 20:46:07 +01:00
Yaroslav
bee476895c
feat(tools): improve tool for sync and update I18N lines (PR #2494 )
...
* feat(tools): add to NLSAddNewLines tool remove lines if it not found on default reference & update commented untranslated line from reference
* fix: sync i18n translation from english reference file
* rename class and task, adjust code style
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-05-19 19:17:07 +01:00
Yaroslav
580f25faae
fix(res): fix decode xml attributes value (PR #2492 )
...
* fix(res): now when decoding attributes used namespace (fix #1675 )
* fix: code formatted
* fix: some code improved on ManifestAttributes class
2025-05-19 18:31:31 +01:00
Skylot
1d1ca7d0c0
fix: process synthetic resource inner classes using common method ( #2482 )
2025-05-18 22:58:37 +01:00
Skylot
dbf4527ce6
chore: update dependencies
2025-05-17 23:29:38 +01:00
Yaroslav
ec726d6ca1
fix(gui): update resource.arsc nodes after opened tab with resource ids (PR #2489 )
...
* fix(gui): update resource.arsc nodes after opened tab with resource ids list by double click (fix #2488 )
* Update jadx-gui/src/main/java/jadx/gui/treemodel/JResource.java
---------
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2025-05-17 22:51:55 +01:00
Yaroslav
be1c02455f
feat(gui): added dialog for select methods for generate frida class snippet (PR #2487 )
...
feat(gui): add dialog for select methods for generate frida snippet
2025-05-16 18:14:33 +01:00
Yaroslav
aee1e86398
fix(gui): restore tree state after renaming (PR #2486 )
...
fix(gui): restore tree state after renaming
2025-05-15 20:54:50 +01:00
Yaroslav
c0d721bea1
feat(gui): added feature to close all left tabs ( #1390 ) (PR #2484 )
...
feat(gui): added feature to close all left tabs (fix #1390 )
2025-05-15 20:32:05 +01:00
Yaroslav
e19a456642
feat(gui): added support view and open more resource files (PR #2483 )
...
* feat(gui): added support view and open more resource files
* fix(gui): remove svg extension from resource types
* fix(gui): use error dialog from common utils
* fix: reformat code
2025-05-15 18:50:19 +01:00
Yaroslav
acd57930cc
fix(gui): improve apk signature loading speed (PR #2481 )
...
fix(gui): improve spk signature loading speed (fix #1827 )
2025-05-14 19:35:24 +01:00
Yaroslav
73348e5183
feat(gui): new HexViewer (PR #2469 )
...
* feat(gui): rewrite hex viewer (#2415 )
* fix: resolved merge conflict
* fix: resolved spotless checks
* fix: try fix CodeQL checks
* fix: fixed checkstyle checks
* fix: always reset selection on hex viewer by left mouse button
* fix: always reset selection on hex viewer by left mouse button
* chore(gui): changed hex viewer to bined lib
* fix: fixed checkstyle checks
* fix: fixed goto address dialog
* chore(gui): added search on hex viewer & updated bined library
* fix: remove commented code
* fix: removed useless code
* fix: removed useless code
* fix: try fix CodeQL scanning
* fix: try fix CodeQL scanning
* fix: try fix CodeQL scanning
* fix(gui): fixed search bar on hex viewer
* fix(gui): fixed is hex string checker
* fix(gui): fixed typo
2025-05-14 19:34:33 +01:00
Little Hour Y
32c92dd9a8
feat(gui): add "Copy All" button to Search dialog (PR #2480 )
...
* add copy all button in CommonSearchDialog
* fix i18n test error
---------
Co-authored-by: ymoon <ymoon@ymoon.com >
2025-05-10 19:05:03 +01:00
nitram84
8bbdbfc563
feat: generate missing throws declarations, validate exceptions ( #2441 ) (PR #2475 )
...
* fix: generate missing throws declarations, validate exceptions (#2441 )
* use ClspGraph.isImplements to check base classes, some code improvements
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-05-09 21:08:41 +01:00
Yaroslav
fd6cb2451b
fix(gui): improved preview tab behaviors (PR #2477 )
...
* fix(gui): improved preview tab behaviors
* Update jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java
---------
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2025-05-08 21:53:15 +01:00
Yaroslav
47647bbb9a
feat(gui): add Preview Tab Feature (PR #2474 )
...
* feat(gui): created simple preview mode (#756 )
* feat(gui): fixed opening code preview tab, if open from available tabs
* fix(gui): rollback mouse events for tree
2025-05-04 20:17:00 +01:00
Skylot
e31d697cd9
fix: check and report invalid magic in '.dex' files ( #2473 )
2025-05-03 21:55:53 +01:00
Skylot
a796d15289
fix(gui): add missing annotations color for dynamic theme ( #2471 )
2025-05-03 21:15:06 +01:00
Skylot
f56eb271a1
feat(gui): allow to set code area theme with custom code ( #2471 )
2025-05-03 20:24:49 +01:00
Yaroslav
fbebcb9845
feat(gui): add dynamic code editor theme from UI theme (PR #2471 )
...
fix(gui): created dynamic theme for code editor (#1763 )
2025-05-02 17:10:27 +01:00
Skylot
79c91634ad
build: set Java 24 for windows bundle
2025-05-01 20:13:51 +01:00
Skylot
f6e12d71a0
chore: update gradle and dependencies
2025-05-01 19:22:16 +01:00
JustFor
62835fbade
fix(gui): update Messages_zh_CN.properties (PR #2470 )
...
sync new text
2025-04-30 18:59:20 +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
ea6492e5ba
fix(gui): properly handle excluded classes in code search ( #2432 )
2025-04-18 22:30:00 +01:00
Skylot
03d4cb134f
build: downgrade java to version 21 for windows bundle
2025-04-15 22:42:39 +01:00
Skylot
37b0b09f25
chore: update dependencies
2025-04-15 21:50:27 +01:00
Skylot
1e75544636
refactor: deprecate temp methods which uses global temp dir
2025-04-15 21:47:52 +01:00
Skylot
d4ce969fb7
fix(test): don't use global configs for cli integration tests
2025-04-15 21:47:51 +01:00
Skylot
9a692d6be4
fix: collect usage info in generic types
2025-04-14 21:43:26 +01:00
Adrian
d3a8a43c74
fix: ignore external and invalid class names in signature ( #2459 )(PR #2460 )
...
* fix: erroneous SignatureProcessor resolution of standard non-generic types with Annotation Signatures
* ignore external and invalid class names in signature
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-04-14 21:36:54 +01:00
Jan S.
518da3d8b5
fix(gui): Xposed snippet argument types corrected (PR #2454 ) ( #2458 )
2025-04-13 18:50:43 +01:00
Josh Ryan
61f5386fe5
feat(gui): support APK Signature Scheme v3.1 signers (PR #2452 )
2025-04-02 22:22:21 +01:00
Jan S.
20cb9c6a3b
fix(gui): flatten packages view: non-leaf packages with classes were not visible in the sources tree (PR #2450 )
...
fix(gui): Flatten packages view: non-leaf packages with classes were not visible in the sources tree
2025-03-28 14:21:56 +03:00
5idereal
4a6784dc68
fix(gui): update zh_TW translation (PR #2448 )
2025-03-27 13:48:23 +03:00
Skylot
bb6db25c9d
fix(gui): apply log level as early as possible
2025-03-25 22:00:21 +00:00
Skylot
d0c496858e
build: improve launch4j parameters
2025-03-25 20:48:10 +00:00
Skylot
b0ab702f9e
build: add accessibility module for win bundle ( #2446 )
2025-03-25 20:46:32 +00:00
Skylot
5846e6d22e
fix: scan annotations in usage collector visitor ( #2435 )
2025-03-22 22:04:15 +00:00
Skylot
4daad2fc79
chore: update gradle and dependencies
2025-03-19 22:25:33 +00:00
Skylot
cca6ca25d1
fix: deduplicate blocks to help 'complex if' restructure ( #2445 )
2025-03-19 22:04:45 +00:00
Skylot
dfa6a83f7c
fix: improve BlockSet class, use it in more places
2025-03-19 22:01:47 +00:00
Skylot
d1a3935c9e
fix(res): improve resource table and config decoding ( #2420 )
2025-03-17 22:14:26 +00:00
Skylot
b4f1021885
fix(gui): improve accessibility of preferences dialog ( #2445 )
2025-03-17 21:25:59 +00:00
Sencaid
a163e5a1de
fix(gui): update Messages_de_DE.properties (PR #2410 )
...
* Deutsch aktualisiert
* Add files via upload
* Update jadx-gui/src/main/resources/i18n/Messages_de_DE.properties
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
* Add files via upload
* Apply suggestions from code review
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
---------
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2025-03-14 19:13:32 +03:00
Jan S.
6eeb303d73
fix(res): chunk parsing was aborted too early for unordered entries (PR #2444 )
2025-03-14 18:48:37 +03:00
Skylot
3209dbb7a4
fix: do not reopen zip file on every resource decode
2025-03-13 20:22:26 +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
5d720dd29c
fix(gui): allow file and directory have same name in tree ( #2420 )
2025-03-13 17:29:33 +00:00
Skylot
c9d650d186
fix: unload attributes map if empty ( #2433 )
2025-03-06 19:36:46 +00:00
Skylot
ce60aa8635
fix(gui): minor action names and icons adjustments ( #2419 )
2025-02-22 20:47:11 +00:00
yyyair
4a9276e904
feat(gui): tabs UI improvements (PR #2419 )
...
* Adds "Reveal In Explorer" tab, to focus on on the current class's tree node
* Adds separators between tab categories, similar to how tabs look in VSCode/IntelliJ
* Rename from reveal_in_explorer to reveal_in_tree
* Minor fixes
* Handle mouse presses on tabs better
* use exist action name instead new one
---------
Co-authored-by: glu0n <glu0n@gmail.com >
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2025-02-22 18:46:00 +00:00
Skylot
b78d3aa2f7
fix: do not replace constant fields which still used in code ( #2414 )
2025-02-19 23:05:35 +00:00
Skylot
4644d1d8ac
fix(gui): correct class init method actions and highlight ( #2412 )
2025-02-17 20:38:21 +00:00
Skylot
7b8fc01319
feat(plugins): new API method to add popup menu entry for tree nodes ( #2412 )
2025-02-17 19:52:49 +00:00
Skylot
ff66f95a8a
fix(smali-input): improve error report for smali assemble ( #2411 )
2025-02-15 21:36:00 +00:00
Skylot
4ef1f3b12b
feat(dex-input): initial support for DEX v41 ( #2128 )
2025-02-12 22:25:34 +00:00
Skylot
8873038b57
fix(gui): save current caret position and add it to tab code jump event ( #2409 )
2025-02-12 19:56:48 +00:00
Skylot
bf58f03405
fix(gui): don't ask to save blank project
2025-02-09 19:23:50 +00:00
Skylot
acf1c8187e
refactor(gui): extract common dialog code into new parent class
2025-02-06 19:47:53 +00:00
Skylot
7bd1b14728
fix(gui): skip window pos saving if not changed
2025-02-06 18:46:56 +00:00
Skylot
61f04d6b07
fix(gui): set minimum size for comment dialog ( #2405 )
2025-02-06 18:46:55 +00:00
Skylot
5d5bf325fe
fix: use fork of directories library with JNI implemetation for Windows ( #2401 )
2025-02-04 17:53:45 +00:00
Hidoni
afdd2d8b39
feat(gui): add button to install desktop file directly from jadx-gui (PR #2404 )
...
* fix: missing/incorrect .desktop file values
- correct comment
- Add StartupWMClass
* feat: add button to install desktop file from jadx-gui (#1392 )
* fix: use POSIX compliant realpath instead of readlink
* fix: get XDG executable from PATH
2025-02-01 23:03:42 +00:00
Skylot
b18604071a
fix(gui): new implementation for tree state save/load ( #2399 )
2025-02-01 19:33:39 +00:00
Skylot
801890f0a8
fix(gui): improve JNode caching ( #2400 )
2025-02-01 17:36:53 +00:00
Jan S.
3d36c93beb
fix(res): ignore reserved value in type chunk (PR #2403 )
...
fix: ignore reserved value in type chunk (fixes #2402 )
2025-01-29 17:12:28 +00:00
Skylot
54fbbd9524
fix(gui): workaround to force class decompilation in loading task ( #2400 )
2025-01-25 20:38:56 +00:00
Skylot
306547d499
fix(gui): improve expand tree (speed up and duplicate entries removal) ( #2399 )
2025-01-24 18:49:36 +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
Skylot
ea5916452d
doc: add plugins usage section
2025-01-20 19:21:49 +00:00
Skylot
19f3cdf501
feat(plugins): add method to open usage dialog
2025-01-20 19:05:06 +00:00
Skylot
45d320a596
feat(plugins): add method to get jadx-gui icons by name
2025-01-20 17:13:23 +00:00
Skylot
6860a8be7e
fix(res): handle null values in android manifest parsing ( #2392 )
2025-01-13 19:55:06 +00:00
Skylot
94915db739
chore: update gradle and dependencies
2025-01-13 19:55:06 +00:00
Yaroslav
29d114402d
feat: parse and use Kotlin SourceDebugExtension with SMAP for rename classes and packages (PR #2389 )
...
* feat: parse and use Kotlin SourceDebugExtension for rename classes and package
* fix: fixed typo
* fix: fixed spotless checks
* fix: fixed spotless checks
2025-01-06 20:16:26 +00:00
Bnyro
6889670b11
chore: add .desktop file for jadx-gui (PR #2388 )
2025-01-01 20:47:29 +03:00
JustFor
fe7d527fcc
fix(gui): update Messages_zh_CN.properties (PR #2387 )
...
sync new text
2024-12-31 18:53:01 +03:00
ewt45
84e211b809
fix: IfRegionMaker find the wrong outBlock (PR #2385 )
...
* IfRegionMaker find wrong out block
* fix: test codes fail because of the previous commit
2024-12-30 16:42:03 +03:00
Skylot
f4849d67cf
build: reduce gitlab test stages due to new compute limit
2024-12-23 21:31:14 +00:00
Skylot
60a8d8b9fd
fix: show all methods for 'simple' and 'fallback' decompilation modes
2024-12-23 21:18:04 +00:00
Skylot
1449354c54
fix: allow to inline methods with ternary instructions ( #2380 )
2024-12-23 20:59:42 +00:00
Skylot
0df474f35a
fix: resolve incorrect var ref validation and remove ( #2381 )
2024-12-23 19:57:08 +00:00
Skylot
de629544a3
fix: force type var short form as a key in generic resolve mapping ( #2370 )
2024-12-22 21:11:34 +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
Yaroslav
a46e35c15c
feat(gui): add export dialog with options (PR #2378 )
...
fix(gui):add export dialog with options (#1983 )
2024-12-21 20:34:54 +00:00
Skylot
73966fda89
fix(gui): add missing sync in clean task at search dialog close ( #2363 )
2024-12-21 19:44:15 +00:00
Skylot
fe0ab5ebf8
fix(gui): improve detection of multi line method comments for update
2024-12-20 20:51:21 +00:00
Yaroslav
8345edf76b
fix(gui): text on popup action change if need update comment & fixes default size on comment diallog (PR #2376 )
...
* fix(gui):text on popup action change if need update comment & fixed default comment dialog size (#2155 )
* don't add new action, just rename labels
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2024-12-20 20:21:57 +00:00
Yaroslav
ff0fbba720
feat(gui): added confirm dialog when removing script (PR #2375 )
...
feat(gui): added confirm dialog when removing script (#2353 )
2024-12-19 19:11:18 +00:00
Yaroslav
fe41d6ed3d
feat(gui): add script rename feature (PR #2374 )
...
* feat(gui): add script rename feature (#2354 )
* fix: resolve spotless check
2024-12-19 18:13:08 +00:00
nitram84
ff95b9e999
fix: better package-info support (PR #2369 )
...
* fix: better package-info support
* fix: adjust checks for package-info
2024-12-18 22:33:48 +00:00
Skylot
87844d2193
fix: remove wrapped flag for inlined instruction ( #2363 )
2024-12-18 21:41:26 +00:00
Skylot
2ac0cc62e6
chore: update dependencies
2024-12-18 21:41:26 +00:00
Yaroslav
2924bb259c
feat(gui): add webp image preview support (PR #2372 )
...
* feat(gui): add webp image preview support (#2190 )
* fix: resolve spotless check
* remove explicit webp provider register
* Update jadx-gui/src/main/java/jadx/gui/ui/panel/ImagePanel.java
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2024-12-18 19:28:44 +00:00
ewt45
17695babf4
fix: inline anonymous class wrongly handles field as Classname.this (PR #2367 )
...
* fix: inline anonymous class wrongly handle Classname.this
* add test case
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2024-12-12 18:54:05 +00:00
ewt45
0d105a5095
fix: inner class parent is wrong when name formatted as Class$method$xxx (PR #2364 )
2024-12-11 19:25:23 +00:00
nitram84
7eab3c8534
feat(gradle): handle non-final res ids for AGP >8.0.0 (PR #2362 )
2024-12-11 17:56:28 +00:00
Skylot
47f2e516e5
fix(gui): resolve ignored mouse actions ( #2360 )
2024-12-09 17:44:32 +00:00
Skylot
fdad829c49
chore: update dependencies
2024-12-09 17:41:26 +00:00
ewt45
2fa7f84251
fix: check respectBytecodeAccModifiers in MarkMethodsForInline (PR #2361 )
...
Update MarkMethodsForInline.java
2024-12-09 16:17:22 +00:00
nitram84
828cad3287
feat: replace constants in annotations of method arguments (PR #2358 )
2024-12-04 17:06:13 +00:00
Skylot
cc0cb6a3d3
chore: update gradle and dependencies
2024-11-24 19:00:09 +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
Skylot
baa93bad63
fix: additional checks for default switch case exit ( #2351 )
2024-11-24 18:19:33 +00:00
Skylot
45df80f036
build: enable gradle configuration caching
2024-11-17 00:07:10 +03:00
Skylot
792e0d6f3a
chore: update gradle and dependencies
2024-11-17 00:07:10 +03: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
1e1036c049
fix: disable usage of JDK Unsafe class in GSON ( #2341 )
2024-11-13 18:28:04 +00:00
Skylot
60dcdc7096
build: add missing modules for runtime JRE
2024-11-12 18:54:01 +00:00
Skylot
c4c3d42d16
build: fix release workflow
2024-11-11 22:46:31 +00:00
Skylot
58c36de8c2
build: add release github workflow
2024-11-10 20:15:34 +00:00
Skylot
b4ca566a19
build: exclude shadow jar from publishing to maven
2024-11-10 20:15:34 +00:00
Skylot
e644bad758
chore: update dependencies
2024-11-10 20:15:34 +00:00
Skylot
dd86abcc5e
chore: remove LGTM config
2024-11-10 17:26:24 +00:00
Skylot
f0513a1a55
fix: insert new filled array insn before first usage ( #2340 )
2024-11-07 20:02:41 +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
pubiqq
5d064d3e50
feat(res): improve resource names (PR #2316 )
2024-11-06 18:08:35 +03:00
pubiqq
15b6309e2c
fix: support "fall-through to default" case in switch-over-string (PR #2338 )
2024-11-05 21:41:03 +00:00
Skylot
417bb7a7e9
feat: add method to update all blocks related info in method ( #2335 )
2024-11-02 22:08:26 +00:00
Ahmet Bilal Can
4c74e8e300
feat: give ability to plugins to edit blocks before locking (PR #2336 )
...
Plugins can use `.before('BlockFinisher')` to edit blocks before they are locked.
2024-11-02 21:38:57 +00:00
Skylot
57238de6ff
feat(cli): add option to disable plugins ( #2277 )
2024-11-01 20:13:34 +00:00
Skylot
313c4a121a
fix: improve negation condition checks for switch over string ( #2333 )
2024-11-01 16:33:28 +00:00
pubiqq
39912398fc
fix: unwrap consts in switch-over-string (PR #2332 )
2024-10-31 21:24:19 +00:00
Skylot
7544d1a113
fix: prevent endless loop in pre header insertion mod ( #2300 )
2024-10-31 20:00:06 +00:00
pubiqq
cfbe5ab672
fix: fix default branch position in switch-over-string (PR #2331 )
2024-10-31 19:58:35 +00:00
Ruffalo Lavoisier
2661b91a6f
feat(gui): create Frida hooking snippet for all methods in the class (PR #2328 )
2024-10-30 17:59:29 +00:00
Skylot
61578e8793
fix(gui): correct tabs filter in "Close others" tab action ( #2330 )
2024-10-30 17:20:16 +00:00
Skylot
cc6a893402
feat: allow to disable installed plugins ( #2277 )
2024-10-28 23:35:28 +03:00
pubiqq
4d8a5d6671
fix(core): fix primitive-to-primitive conversions (PR #2326 )
2024-10-28 20:33:10 +00:00
Skylot
982307b1ac
fix(gui): use correct section filter in plugins list
2024-10-25 19:01:43 +01:00
Skylot
37054dc84e
fix(gui): load plugins settings in temp context without UI ( #2206 )
2024-10-25 18:51:38 +01:00
Skylot
343e2c531a
chore: expand input dirs in ConvertArscFile
2024-10-25 18:12:48 +01:00
pubiqq
6fa5d247f0
fix(res): update Android attrs to API 35 (PR #2318 )
2024-10-25 18:08:36 +01:00
pubiqq
688dea0c50
fix(deobf): update TLDs (PR#2320)
2024-10-25 16:44:07 +01:00
Skylot
c0815b12bc
chore(gui): add missing ref text in untranslated messages ( #2319 )
...
fix
2024-10-24 20:33:52 +03:00
JustFor
233f8692b2
fix(gui): update Messages_zh_CN.properties (PR #2319 )
...
1. New text is translated simultaneously, two untranslated texts remain (no English text)
2. Adjusted and unified part of the symbol, into the full Angle symbol.
2024-10-24 18:31:14 +01:00
Skylot
e5be41b9cc
fix(gui): use another implementation for font dialog ( #2310 )
2024-10-22 21:32:14 +01:00
Skylot
3788e4ef3a
fix(gui): in settings row reduce space between description and value
2024-10-22 18:52:42 +01:00
Skylot
32855f4511
fix(gui): improve plugins preferences group
2024-10-22 18:51:19 +01:00
Skylot
3d5e225274
fix: clear temp root dir instead delete ( #2312 )
2024-10-22 18:01:52 +01:00
nitram84
8a34d973ff
build: use jadx-gui as a library in plugins (PR #2310 )
...
* fix(gui): fix javadoc issues
* feat(gui): export jadx-gui as a library
* fix(gui): fix javadoc issues
* fix(gui): remove invalid characters for javadoc
* add jadx-library also for jadx-cli and jadx-script-ide modules
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2024-10-22 17:24:57 +01:00
Skylot
a43b3282ef
fix(gui): update check fixed to match current artifact naming
2024-10-17 21:57:20 +01:00
Skylot
249801880c
feat(api): allow to get method code ( #2305 )
2024-10-17 19:20:07 +01:00
Skylot
742d30d770
chore: resolve warnings in SmaliArea class
2024-10-16 17:29:36 +01:00
Skylot
267413332a
chore: resolve KtLint deprecation warning
2024-10-16 17:23:09 +01:00
Skylot
f9c94f27f1
chore: update dependencies
2024-10-16 17:01:03 +01:00
Skylot
d2131d9640
build: gradle wrapper validation not needed, check done in setup-java action
2024-10-16 17:00:43 +01:00
Skylot
548821c4df
build: allow to change java toolchain for build and tests
2024-10-16 16:54:28 +01:00
pubiqq
958ab245ae
fix(res): don't rename resource entries when useRawResName = true (PR #2306 )
2024-10-14 20:32:12 +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
b872ffd1b9
fix: replace patched zip early in input files ( #2302 )
2024-10-12 20:53:09 +01:00
Skylot
c5263f92fe
fix(gui): send select tab event before code jump ( #2292 )
2024-10-12 21:23:53 +03:00
pubiqq
1475e887c8
fix: update reserved keywords (PR #2301 )
2024-10-11 20:47:34 +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
Skylot
2d10537050
chore: update dependencies
2024-10-10 22:57:40 +03:00
pubiqq
3814951408
feat: improve better name algorithm (PR #2299 )
2024-10-10 20:01:57 +01: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
xiaojye
3ed2df828f
feat(gui): add button to go to Android Manifest (PR #2296 )
...
* feat: Add button to go to Android Manifest
* fix: Change the text from 'Go to Manifest' to 'Go to AndroidManifest.xml' and replace icon source
2024-10-10 17:11:08 +01:00
Skylot
b26abdc851
feat(plugins): get config and cache dirs for plugins
2024-09-29 21:55:05 +01:00
Skylot
90185fd947
feat(plugins): get a main window reference as JFrame
2024-09-29 21:54:24 +01:00
Skylot
681f8a98b5
fix: improve checks for restore new filled array ( #2289 )
2024-09-28 16:52:08 +01:00
Skylot
0b225238fb
feat: support restore of switch over string (basic case)( #2288 )
2024-09-27 21:11:38 +01:00
Skylot
a7649dda7a
chore: update gradle and dependencies
2024-09-27 21:08: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
7abbc81886
fix: improve switch out block search if all method exits are inside ( #2264 )
2024-09-22 21:35:40 +01:00
Skylot
9c30aeacdb
refactor: split region maker
2024-09-22 20:23:03 +01:00
Skylot
8f27de4d0e
chore: update dependencies
2024-09-21 22:00:03 +01:00
Skylot
02b69d2d29
fix(gui): prevent old refs leak in shortcuts controller
2024-09-21 21:53:31 +01:00
Skylot
e6fde48b69
fix: don't add same 'loaded from:' comment for inner classes
2024-09-21 20:28:18 +01:00
Skylot
109dea0857
feat: support inner class contruction with outer instance ( #2253 )
2024-09-21 20:27:16 +01:00
Skylot
1d34328dd3
fix(build): disable cache for core tests to allow reruns ( #2283 )
2024-09-20 21:44:55 +01:00
Skylot
ef4f1d3ed4
fix: ignore debug lines hints if numbers was adjusted for method
2024-09-20 21:36:13 +01:00
Skylot
23696d3971
fix: use type from new-instance if differ from constructor call ( #2285 )
2024-09-20 21:34:21 +01:00
Andy Smith
efa2f5d172
feat(gui): limit search to a package (PR #2284 )
...
* Add isDescendantOf and getJavaPackage helper functions
* Add i18n strings for search package
* Added search package to options in SearchSettings
* Add package limiting to each search provider
* Add package search to dialog and logic to get package by string.
* Added search option to package context menu
* Fix spotlessJavaCheck complaints
* Revert changes to individual search providers and add filter to base provider
2024-09-20 12:31:20 +03:00
Skylot
699ceb197e
fix: improve condition branch checks in loops ( #2274 )
2024-09-16 20:37:34 +01:00
Skylot
5c83c22501
feat(java-input): support StackMapTable to get stack info for unvisited jumps ( #2271 )
2024-09-14 22:45:31 +01:00
Skylot
7bb5c0a859
fix: protect class deps from loading in different decompilation mode
2024-09-13 21:25:11 +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
889a945cf1
fix: additional checks for class signature ( #2272 )
2024-09-12 20:29:05 +01:00
Skylot
fd80e03809
fix: check if debug info offset is invalid ( #1653 )
2024-09-11 19:54:49 +01:00
Skylot
b5807082d9
chore: update gradle and dependencies
2024-09-11 19:54:49 +01:00
Skylot
5d1f0b8cae
feat(res): support grammar inflection flag in res config ( #2270 )
2024-09-08 21:49:13 +01:00
Skylot
3f9aa34057
fix(gui): resolve old objects reference leak in TabsController
2024-09-07 01:21:46 +03:00
Skylot
e2c860f260
refactor(res): use list instead map to store entries offsets
2024-09-07 01:21:46 +03:00
Skylot
0938351d97
feat(res): support compact resource entries ( #2268 )
2024-09-07 01:21:42 +03:00
pubiqq
937dd20794
feat(res): support 16-bit entry offsets (PR #2269 )
2024-09-06 23:21:21 +01:00
pubiqq
ea5e87560a
feat(res): improve error message for unsupported ResTable flags (PR #2266 )
2024-09-05 19:13:26 +01:00
Skylot
5fbbf2150e
fix(res): prevent duplication of ARSC entries ( #2263 )
2024-09-04 21:31:37 +01:00
Skylot
0e11bffe82
chore: update dependencies
2024-09-04 20:02:56 +01:00
Skylot
ba9af5c288
fix(gui): minor fixes for code jumps
2024-09-04 19:59:57 +01:00
Skylot
cca706c94f
fix: improve 'continue' insertion for switch in loop ( #2249 )
2024-09-01 23:02:22 +01:00
Skylot
2df69bbfb4
fix(gui): prevent UI stuck on class load ( #2259 )
2024-08-31 22:30:18 +01:00
Skylot
f5307636ef
fix(gui): merge full class name tokens for constructors ( #2261 )
2024-08-30 22:39:43 +03:00
Mino
9a39b70a46
fix(gui): Quick Tabs Optimization (PR #2242 )
...
* optimize tabs reorder
* restructure based on quick tabs architecture
* code formatting
* log all exceptions from background executor
* various improvements
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2024-08-30 20:33:05 +01:00
pubiqq
e63808bc4b
fix: improve checking of access modifiers (PR #2255 )
2024-08-20 16:45:28 +03:00
Skylot
847225a6a9
fix: improve try/catch temp edges injection ( #2247 )
2024-08-17 21:09:31 +01:00
Skylot
eee354a3ab
chore: update gradle and dependencies
2024-08-17 21:01:27 +01:00
Skylot
1cc00a54f3
fix(gui): use correct translation in rename dialog ( #2254 )
2024-08-17 21:58:39 +03:00
pubiqq
ffdad1b652
fix: improve checking of access modifiers for methods (PR #2252 )
2024-08-15 23:20:07 +01:00
pubiqq
9a8ec76989
fix: improve checking of access modifiers for classes (PR #2251 )
2024-08-15 19:59:44 +01:00
Skylot
0be5b2cea9
refactor(tests): add debug checks switch to jadx args
2024-08-13 22:39:48 +01:00
Skylot
c94201be4a
fix: improve switch out search in loop ( #2246 )
2024-08-12 22:06:03 +01:00
Skylot
1051dacb1e
refactor(tests): migrate from Hamcrest to AssertJ
2024-08-11 21:55:56 +01:00
Skylot
a2bfe9bbe8
chore: add openrewrite gradle plugin to improve code quality
2024-08-11 21:10:01 +01:00
Skylot
8c6ec3bccc
fix(gui): trim also leading spaces in paths from file dialog ( #2244 )
2024-08-10 19:24:05 +01:00
Skylot
015876b790
fix(gui): trim trailing spaces in input files ( #2244 )
2024-08-10 00:31:25 +01:00
Skylot
280f3870a9
fix: handle quick return on branched constructor ( #2240 )
2024-08-09 22:54:13 +01:00
Skylot
e9d770ae9e
fix: use correct approach to get prev block on path ( #2239 )
2024-08-09 22:51:37 +01:00
Skylot
5f1bd1d9ba
chore: migrate gradle shadow plugin
2024-08-08 20:44:34 +01:00
pubiqq
60fb458024
fix: improve inlining synthetic accessors (PR #2243 )
...
* fix: fix inlining synthetic accessors
* add test, undo changes in InsnNode
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2024-08-08 20:27:08 +01:00
Skylot
1b08779536
chore: update dependencies
2024-08-07 19:06:58 +01:00
Skylot
c37e39a819
chore: code improvements by cleanthat
2024-08-07 00:34:22 +01:00
Skylot
2d58fbd4b1
chore: forbid use ArrayList as a variable type
2024-08-07 00:28:39 +01:00
Mino
ffbf800404
feat(gui): Quick Tabs Overhaul (PR #2241 )
...
* restructure quick tabs code
* code formatting
* display open tabs
* added bookmark tabs feature
* fix tabs pin and bookmark not saved
* fix NPE treeModel not initialized
* Fix hardcoded strings
* remove unused statement
* fix NPE again
* added bookmark overlay
* preserve tabs order
* fix context menu actions
* remove unnecessary public modifier
* save tabs in tabbedpane order
* remove unreferenced tabs
* Update jadx-gui/src/main/java/jadx/gui/ui/tab/TabComponent.java
---------
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2024-08-06 23:47:25 +01:00
dependabot[bot]
500aa8a68d
build(deps): bump gradle/actions from 3 to 4 (PR #2238 )
...
Bumps [gradle/actions](https://github.com/gradle/actions ) from 3 to 4.
- [Release notes](https://github.com/gradle/actions/releases )
- [Commits](https://github.com/gradle/actions/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: gradle/actions
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-05 18:35:39 +01:00
Skylot
58e8268126
fix: workaround to make method inline deterministic ( #1089 )
2024-08-04 22:46:46 +01:00
Skylot
f9da6e00ed
fix(gui): add VM flags to fix UI ghosting ( #2225 )
2024-08-04 19:40:14 +01:00
Skylot
821cc668c7
fix: don't rerun SSA transform in ConstructorVisitor ( #2236 )
2024-08-02 21:26:25 +01:00
Skylot
287ba49008
fix(gui): show folding actions in code popup menu ( #2234 )
2024-08-02 17:13:16 +01:00
pubiqq
115e563a2b
fix: improve checking if methods are inline for FixAccessModifiers (PR #2235 )
2024-08-01 21:45:52 +01:00
Mino
1669200e62
feat(gui): smali code folding (PR #2233 )
...
* added smali code folding
* remove unnecessary public modifiers
* improve code
* undo method extract
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2024-08-01 19:33:37 +01:00
Mino
6ab224ea0d
feat(gui): pin tabs (PR #2230 )
...
* add ability to pin tabs
* save pinned tabs with Save Project action
* further prevent closing pinned tabs
* add translation entries
* prevent pinning start page
* add pinned tabs tree view
* properly dispose of quickTabsTree
* restructure code
* more unpin context menu items
2024-08-01 18:06:45 +01:00
pubiqq
61855a7ea1
fix: make detailed var info deterministic (PR #2231 )
2024-07-31 22:16:07 +01:00
Mino
bda3119e86
fix(gui): horizontal scrolling in Linux (PR #2229 )
...
* fix horizontal scrolling in linux
* improve code
---------
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2024-07-31 17:02:00 +01:00
Mino
b26abed686
feat(gui): export resource/class/package (PR #2228 )
...
* feat: export resource
* feat: export class
* restructure code: introduce enum for exporting classes
* feat: export package
* feat: export resource folder
* check directory exists before creation
* apply code formatting
* fix code formatting
* Apply suggestions from code review
---------
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2024-07-31 17:00:54 +01:00
Skylot
c179beee95
chore: update dependencies
2024-07-28 20:57:37 +01:00
Skylot
04a454094b
fix: improve exception handlers checks ( #2086 )
2024-07-27 22:09:14 +01:00
Skylot
33bcbfec41
chore(docs): minor fixes
2024-07-27 22:09:13 +01:00
Skylot
ec645d80b1
fix(mappings): try to prevent mapping file reset on export exception, refactor and fix code to avoid NPE ( #2220 )( #2226 )
2024-07-25 17:44:23 +01:00
Jan S.
a8d889de3d
fix(launch4j): do not overwrite Java heap configuration from applicationDefaultJvmArgs (PR #2218 )
2024-07-20 20:46:45 +01:00
Skylot
ec0bf701c8
fix(build): fix hiding console in Windows ( #2196 )
...
Regression after migration to shadow jar in #1868 ,
instead CreateStartScripts task from 'application' plugin
'startShadowScripts' task should be modified.
2024-07-19 00:19:47 +03:00
Skylot
ad4dd116be
chore: update gradle and dependencies
2024-07-19 00:19:47 +03:00
Skylot
ef79f266c8
fix(build): fix gitlab build
2024-07-19 00:19:43 +03:00
Jan S
366225f9be
fix(quark): fix automated installation and check exit code of executed external commands ( #2119 )(PR #2216 )
2024-07-12 18:39:17 +01:00
Skylot
730db0d24f
fix(build): do not wrap jar in launch4j ( #2186 )
2024-07-08 22:17:06 +01:00
Iscle
05fb77e9bd
feat(gui): add button to go to Application class ( #2208 )(PR #2213 )
...
* feat: Add button to go to Application class
Icons from: https://intellij-icons.jetbrains.design/
* fix: Rename "goto" to "go_to" to keep things consistent
2024-07-08 18:36:45 +01:00
Iscle
bbabfa0354
fix(gui): fix Xposed args code generation (PR #2212 )
...
* Rename .java to .kt
* fix: Fix wrong function arguments when generating kotlin xposed code
2024-07-08 18:34:28 +01:00
Jan S
96bd9f0f17
fix(xml): AXML/Manifest parsing improvements (PR #2211 )
...
* log and ignore decodeValue errors
* skip extra data in package header
* ResourceTypes.h
2024-07-06 19:27:47 +03:00
qfalconer
fd5b397b40
fix(xml): allow for non-standard attributes sizes and avoid index exceptions when decoding some strings (PR #2210 )
...
More lenient AXML parsing: allow for non-standard attributes sizes and avoid index exceptions when decoding some strings
* The attributes size of an XML element is now accounted for. This size must be at least 20 (0x14) bytes but can be greater. Extra bytes are just skipped. When decoding a string, if such decoding is impossible a placeholder string is returned instead of throwing an exception. This is necessary because some malware purposely add android:tag attributes with invalid string index to throw parsers off. They also employ non-standard attribute sizes.
* Minor code restyling
---------
Co-authored-by: qfalconer <knm241@gmail.com >
2024-07-03 18:50:15 +01:00
Artem Zhiganov
f5e3a261b4
fix(gui): update russian translation (PR #2209 )
...
Co-authored-by: SVolf <dev@thunderdog.ru >
2024-06-28 18:39:23 +01:00
JustFor
52a884608a
fix(gui): update Messages_zh_CN.properties (PR #2203 )
...
sync new texts.
2024-06-14 18:52:31 +01:00
Iscle
74ddfde950
feat(gui): allow to check for unstable releases (PR #2200 )
...
* feat: gui: convert JadxUpdate to Kotlin
* feat: gui: allow updater to check for latest unstable artifacts
* fix: remove nullable operator from onUpdate() interface
2024-06-11 22:49:44 +01:00
Skylot
9aacb4f312
fix: config dir was used instead cache dir
2024-06-11 20:55:49 +01:00
Jiaxin Peng
82e2104f3c
fix(gui): support filtering files with multiple extensions in file dialog (PR #2185 )
...
* fix(gui): support filtering files with multiple extensions in file dialog
* lint
2024-05-19 17:47:35 +01:00
Skylot
09fa35f144
feat: allow to change config and cache dirs with env vars ( #2159 )
2024-04-27 21:48:42 +01:00
Skylot
f2a6a1e942
build: update JDK to 21 for windows artifacts
2024-04-27 17:40:06 +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
Jan S
37a42d1418
fix(gui): show correct content of binary resources in hex view ( #2160 ) (PR #2166 )
2024-04-24 19:29:52 +01:00
Jan S
07dde05337
fix(build): configure launch4j to not change current directory ( #2162 ) (PR #2163 )
2024-04-24 18:52:08 +01:00
Nick
8618214c7f
docs: improve installation section (PR #2161 )
...
* Update README.md
* Update README.md
2024-04-24 18:43:05 +01:00
Skylot
b80f32a36f
fix(smali-input): compile one smali file at a time to avoid 64k limit ( #2158 )
2024-04-23 22:14:59 +01:00
Skylot
ce527ed753
fix(build): add missing files in bundle
2024-04-20 21:04:17 +01:00
Skylot
f2ea6415c9
fix(cli): don't print stacktrace for incorrect options ( #2140 )
2024-04-20 18:06:30 +01:00
Skylot
bc70f8eabb
fix: use correct new line string for simple code writer
2024-04-20 17:37:45 +01:00
Skylot
be25cbf8c2
fix: use common parser for manifest, verify app package
2024-04-20 17:37:45 +01:00
Skylot
f9c0cad146
chore: update dependencies
2024-04-19 20:14:25 +01:00
Skylot
b356ff76e1
fix: improve StringBuilder elimination ( #2148 )
2024-04-19 20:14:25 +01:00
Skylot
ec9244a635
fix(gui): use common code for manifest parsing in debugger
2024-04-19 20:14:25 +01:00
omerfarukkykc
a5bd64461d
fix(gui): remember selected device in debugger (PR #2153 )
...
* ADBDialog->launchApp() if multiple devices presented should let user select the one they desire.
* compare objects directly instead parsing
---------
Co-authored-by: Ömer Faruk KAYIKCI <omer.kayikci@tubitak.gov.tr >
Co-authored-by: Skylot <118523+skylot@users.noreply.github.com >
2024-04-19 19:02:12 +01:00
dependabot[bot]
54bf79ccc5
build(deps): bump gradle/wrapper-validation-action from 2 to 3 ( #2149 )
2024-04-15 18:17:48 +00:00
Skylot
6182332eef
fix: avoid self-loop for exception handlers ( #2147 )
2024-04-11 23:07:45 +03:00
Skylot
37b57096ec
fix: allow use FieldInfo as switch key ( #2147 )
2024-04-11 23:07:44 +03:00
Skylot
6aab8fabc9
chore: update dependencies
2024-04-11 23:07:41 +03:00
JustFor
665c1e57d2
fix(gui): update Messages_zh_CN.properties (PR #2146 )
...
Sync new Jadx text.
2024-04-09 22:11:24 +01:00
Skylot
6e8affcbdc
feat: add options to JadxArgs to change code new line and indent ( #1945 , #1948 )
2024-04-08 21:51:24 +01:00
Skylot
41d6b0018e
fix: add missing " * " on new line for block comments, flip addCodeComment args ( #2145 )
2024-04-08 21:34:34 +01:00
Skylot
dbadbb01fc
refactor: rename method collectArgsWithoutLoading into collectArgNodes in MethodNode ( #2142 )
2024-04-07 23:09:02 +01:00
Skylot
0f52077c5c
feat: allow to set style for code comments ( #2145 )
2024-04-07 23:06:32 +01:00
Skylot
ea861829c7
fix: support end block entry for mutli-entry loops ( #889 )
2024-04-06 22:49:32 +01:00
Skylot
c1de235289
fix: in anonymous class checks ignore instance fields not used outside
2024-04-06 22:45:30 +01:00
Skylot
8f969d4e89
chore: update gradle and dependencies
2024-04-03 21:03:48 +01:00
Skylot
0c1f830f94
fix: lambda decoding and code generation ( #2139 )
2024-04-03 21:03:48 +01:00
Skylot
43c082e4da
feat: replace Android resource ids with android.R fields ( #2119 )
2024-03-31 20:37:33 +01:00
Skylot
ecdc4e6757
refactor: move constant collection into separate pass ( #2119 )
2024-03-30 21:51:02 +00:00
Skylot
b865c9c687
refactor: allow store unresolved fields in ConstStorage ( #2119 )
2024-03-30 20:52:31 +00:00
xnumad
6b4976c593
fix(gui): handle paths where file name is null ( #2136 )(PR #2137 )
...
* fix: Ignore invalid files
Avoid NullPointerException when using "Open files" or drag-n-drop
* refactor: Replace Stream API chain with loop
IntelliJ
* fix: Ignore invalid files
Avoid NullPointerException when using "Add files"
* fix: Fall back to complete path string
Instead of empty project name
* fix: Render tree
Project tree (sidebar) didn’t load
Toggling "View > Show flatten packages" threw a NPE here
* fix code formatting
---------
Co-authored-by: Skylot <skylot@gmail.com >
2024-03-29 22:30:01 +00:00
Skylot
2807dc5090
fix(script): add example script for resources rename ( #2126 )
2024-03-20 18:46:44 +00:00
Skylot
463d2b90fa
fix: don't apply node positions and prevent eager loading for custom decompile modes ( #2116 )
2024-03-19 20:23:04 +00:00
Skylot
bff00d101f
fix(script): add option flags, fix missing script options in help
2024-03-19 20:22:50 +00:00
Skylot
1290ef63a2
fix(build): enable publish to maven for rename-mappings plugin
2024-03-16 21:58:03 +03:00
Skylot
49d2b34d84
chore: update dependencies
2024-03-16 21:58:00 +03:00
CKCat
eecdfae73f
fix(res): resolve some manifest decode errors (PR #2122 )
...
* The elementSize may be larger than the actual size of the element chunk.
* end namespace chunk size can be any value.
* keep at least a warning.
2024-03-16 18:57:10 +00:00
JustFor
8760b4ddde
fix(gui): copy strings without quotes (PR #2121 )
...
* Update AbstractCodeArea.java
In general, we need data, not text in code. But now every time you copy the highlighted text, you copy the highlighted quotes as well. This often results in an extra need to delete the quotation marks around the sides, which is confusing.
Now when copying selected highlighted text, quotes are not copied in.
* Update AbstractCodeArea.java
fix code format
* additional checks, move to common method
---------
Co-authored-by: Skylot <skylot@gmail.com >
2024-03-16 18:55:57 +00:00
Andrei Kudryavtsev
3599b248a4
feat(gui): dragging tab appearance settings ( #2120 )(PR #2118 )
2024-03-08 23:11:58 +03:00
bagipro
2fdd496518
fix(res): add indents for namespace declarations (PR #2114 )
...
Co-authored-by: bagipro <bugi@bugi>
2024-03-01 16:32:47 +00:00
bagipro
278e3c2d47
fix(res): avoid duplicated XML attributes (PR #2112 )
...
Co-authored-by: bagipro <bugi@bugi>
2024-02-27 18:49:09 +00:00
bagipro
881a716b8e
fix(res): fixed XML proto parsing for removed debug data (PR #2111 )
...
* Fixed XML proto parsing for removed debug data
* Fixed codestyle check
---------
Co-authored-by: bagipro <bugi@bugi>
2024-02-27 17:34:37 +00:00
Skylot
a73c9e90fc
fix(dex-input): improve error report message for invalid dex checksum
2024-02-26 19:36:28 +00:00
Skylot
56749b2afb
chore: update dependencies
2024-02-25 22:38:00 +03:00
Andrei Kudryavtsev
d7ec35791b
feat(gui): tabs drag and drop reorder support ( #1212 ) (PR #2109 )
2024-02-25 19:36:46 +00:00
Skylot
d51362ed50
fix: don't remove exception handlers ( #2104 )
2024-02-19 20:18:44 +00:00
Skylot
5c0c1daa71
fix(gui): use new RSTA line number formatter API to show source lines
2024-02-16 18:38:56 +00:00
Skylot
603ea3989a
chore: update dependencies
2024-02-16 17:41:37 +00:00
Emiel Matthys
018ff98df7
feat(gui): remember save preference decision (PR #2103 )
...
* First version
* Use dropdown
* Spotless
* Language strings and tests
* Comment out translated versions
* Remove more translations
---------
Co-authored-by: Emiel Matthys <emiel.matthys@guardsquare.com >
2024-02-15 18:00:37 +00:00
nitram84
5fbabdefca
fix: NPE in unused EcxHandler block removal code ( #2086 ) (PR #2104 )
2024-02-15 17:57:30 +00:00
nitram84
13607fc8b6
fix(res): add missing namespace declarations (PR #2102 )
...
* fix(res): add missing namespace declarations
* remove `writer.getIndent() == 0`
---------
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2024-02-15 17:56:39 +00:00
DanielFi
0c33d723c8
fix: optimize switch fallthrough (PR #2054 )
...
* cache post dom map between switch cases
* cache post dom map of whole methods
* calculate full post dom tree, fix switch out block detection
---------
Co-authored-by: Skylot <skylot@gmail.com >
2024-02-14 18:31:38 +00:00
Skylot
0143423dc9
fix: use empty line before field in correct place ( #2101 )
2024-02-12 15:39:41 +00:00
Skylot
21b1452485
chore: update gradle and dependencies
2024-02-12 15:39:40 +00:00
Skylot
ecb8abb98e
fix: correct rollback if type update failed ( #2090 )
2024-02-10 16:08:51 +00:00
Skylot
a3a4fabd5a
fix: store classes access flags in class set
2024-02-07 22:10:31 +03:00
Skylot
edf6ce273c
fix: clear node flags for custom decompilation mode
2024-02-06 21:54:41 +03:00
dependabot[bot]
1bb956a8b0
build(deps): bump gradle/wrapper-validation-action from 1 to 2 (PR #2099 )
...
Bumps [gradle/wrapper-validation-action](https://github.com/gradle/wrapper-validation-action ) from 1 to 2.
- [Release notes](https://github.com/gradle/wrapper-validation-action/releases )
- [Commits](https://github.com/gradle/wrapper-validation-action/compare/v1...v2 )
---
updated-dependencies:
- dependency-name: gradle/wrapper-validation-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-05 18:38:02 +00:00
Away
276ee537e1
fix: remove unused ExcHandlers blocks (PR #2086 )
...
* Removing unused ExcHandlers blocks
* Improving removing unused ExcHandlers blocks
* Removing gradlew of the commit
* Adding test 2 for UnreachableCatch
* Update jadx-core/src/test/java/jadx/tests/integration/trycatch/TestUnreachableCatch2.java
---------
Co-authored-by: Away-pp <vladimir@DESKTOP-KESF23K>
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2024-02-04 18:02:34 +00:00
Andrei Kudryavtsev
7e628ad1a1
fix(gui): detecting tab click with mousePressed instead of mouseClicked (PR #2097 )
2024-02-04 17:36:02 +00:00
Sebastian Gallese
0a40b53412
docs: update Build Status shield in README (PR #2095 )
2024-02-01 17:20:02 +00:00
dependabot[bot]
682f90de2f
build(deps): bump gradle/gradle-build-action from 2 to 3 (PR #2094 )
...
* build(deps): bump gradle/gradle-build-action from 2 to 3
Bumps [gradle/gradle-build-action](https://github.com/gradle/gradle-build-action ) from 2 to 3.
- [Release notes](https://github.com/gradle/gradle-build-action/releases )
- [Commits](https://github.com/gradle/gradle-build-action/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: gradle/gradle-build-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
* migrate to gradle/actions/setup-gradle@v3
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2024-01-29 20:00:31 +00:00
Skylot
1a07ab8ab1
chore: update dependencies
2024-01-25 20:10:39 +00:00
Skylot
d86449a8ea
fix(res): ignore resource table entries with '../' in name
2024-01-25 20:09:21 +00: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
Away
a19aec9d9f
fix: use correct order in removeUnreachableBlocks (PR #2085 )
...
* Fixing wrong order in removeUnreachableBlocks
* Removing dead code in TestTernary4 test
* Do not clear instructions in detach blocks method
2024-01-21 16:05:02 +00:00
Skylot
61be1d8b0a
fix(gui): allow to reset variable name, fix renames for inner classes
2024-01-18 20:36:51 +00:00
Skylot
4483533417
fix(gui): highlight word even if cursor at the end of that word ( #2083 )
2024-01-18 19:40:53 +00:00
Skylot
fb703cd856
fix(gui): scroll to first error on jadx script check/run
2024-01-18 18:17:53 +00:00
Skylot
c0ff7572ac
fix(gui): round file size to block size for cache usage calculation
2024-01-17 18:25:35 +00:00
Skylot
8e7ffc8ddb
fix: support switch over enum by ordinal
2024-01-16 20:40:51 +00:00
Skylot
f994abee21
build: add Java 21 to Gitlab CI
2024-01-15 19:34:29 +00:00
Skylot
6f1dfb6848
chore: update dependencies
2024-01-15 22:18:45 +03:00
Skylot
306bc7abc3
feat(java-input): support jsr/ret opcodes ( #2039 )
2024-01-15 22:18:44 +03:00
Skylot
8ed48183c7
feat(plugins): add API for search/use other plugins
2024-01-15 22:18:44 +03:00
Skylot
fdc3fe1a8d
fix(java-input): use correct registers for dup2_x* opcodes
2024-01-15 22:18:44 +03:00
Away
2805770510
fix: removeUnreachable not searching in all blocks (PR #2082 )
...
Co-authored-by: Away-pp <vladimir@DESKTOP-KESF23K>
2024-01-14 17:07:39 +00:00
Skylot
03052baabe
chore: update dependencies
2024-01-11 19:10:44 +00:00
Iscle
23e643c686
fix(gui): attempt to resolve field rename issues with shortcut ( #1440 )(PR#2075)
...
This is an attempt to fix the issues that sometimes arise when renaming functions or variables using the "n" shortcut as stated in issue #1440 .
The reasoning behind the change: The instance creation of the RenameDialog was somehow affecting the UI thread and not allowing for the key release event to be dispatched. By running everything inside the invokeLater block, this might get fixed as it will execute after all previous tasks are finished.
We now also only show the dialog after EVERYTHING is set up, not before.
2024-01-05 21:42:06 +03:00
Iscle
faeae086d1
feat(gui): improve search bar behavior when using key bindings (PR #2074 )
...
Before, the search bar would toggle, which was quite annoying. Now, it replicates IntelliJ's search bar behaviour.
1.1. If the user has selected text, use that as the search text
1.2. Otherwise, use the previous search text (or empty if none)
2. Select all text in the search bar and give it focus
2024-01-05 21:31:34 +03:00
Iscle
38e64fafbd
feat: add an option to generate kotlin code for xposed (PR #2070 )
...
* feat: add an option to generate kotlin code for xposed
A new setting was added, bumping the settings version to 19.
* refactor: applied spotless
* refactor: fixed formatting
* refactor: fixed formatting once again
2024-01-05 21:24:08 +03:00
Skylot
e723c245ee
fix: use correct type printer in json output mode ( #2053 )
2023-12-23 18:46:39 +00:00
Skylot
3e57dacfd3
chore: update dependencies
2023-12-21 19:00:33 +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
238fe17df0
fix(gui): add hint for class renaming ( #1590 )
2023-12-18 18:14:56 +00:00
Skylot
295befbaaa
fix: check class alias for Kotlin Intrinsics search ( #1590 )
2023-12-18 18:14:56 +00:00
dependabot[bot]
5f20033f18
build(deps): bump actions/upload-artifact from 3 to 4 ( #2060 )
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 3 to 4.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-18 17:59:11 +00:00
dependabot[bot]
5f376c6e21
build(deps): bump github/codeql-action from 2 to 3 ( #2061 )
...
Bumps [github/codeql-action](https://github.com/github/codeql-action ) from 2 to 3.
- [Release notes](https://github.com/github/codeql-action/releases )
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/github/codeql-action/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: github/codeql-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-18 17:57:37 +00:00
Skylot
68a99c5410
chore: update dependencies
2023-12-16 19:20:45 +03:00
Skylot
8db70ee7a5
fix(gui): resolve reset and commit issues for disk code cache
2023-12-16 19:20:43 +03:00
LanBaiCode
b6155afd32
fix(gui): use correct type for generic params in Xposed snippet (PR #2057 )
...
* Fix: Resolved an issue with incorrectly generated xposedMethodSnippet when the parameter type is generic.
Add: Introduced xposedGenerateFieldSnippet.
* fix code format
* Fixed: Resolved the issue where Xposed code generation was incorrect when dealing with generic parameters and alias fields.
---------
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2023-12-11 17:14:10 +00:00
Away-pp
d5bf9f20a6
fix: IndexOutOfBoundsException with negative register index (PR #2056 )
...
Co-authored-by: Away-pp <awaytesting1@gmail.com >
2023-12-10 18:51:25 +00:00
Skylot
2d5c0fda4a
fix: prefer early return for 'if-else-if' block ( #2052 )
2023-12-05 21:08:22 +00:00
Skylot
5d56001826
build(deps): migrate to Google fork of Smali
2023-12-04 20:42:09 +00:00
Skylot
2de91f9a3a
chore: update gradle and dependencies
2023-12-04 23:18:51 +03:00
dependabot[bot]
e06e6bd483
build(deps): bump actions/setup-java from 3 to 4 ( #2051 )
...
Bumps [actions/setup-java](https://github.com/actions/setup-java ) from 3 to 4.
- [Release notes](https://github.com/actions/setup-java/releases )
- [Commits](https://github.com/actions/setup-java/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/setup-java
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-04 19:55:32 +00:00
nitram84
1e57e85382
fix: gradle export for APKs without strings.xml (PR #2050 )
2023-12-03 17:38:46 +00:00
LanBaiCode
ca03406a3d
fix: correct type for generic params in Xposed snippet, add fields support (PR #2047 )
...
* Fix: Resolved an issue with incorrectly generated xposedMethodSnippet when the parameter type is generic.
Add: Introduced xposedGenerateFieldSnippet.
* fix code format
---------
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2023-11-25 17:55:53 +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
edb1717969
fix: support variables reuse for enum restore ( #2042 )
2023-11-16 20:48:07 +03:00
Skylot
1b51234edc
chore: update dependencies
2023-11-16 20:48:07 +03:00
nitram84
e6d896d91e
fix(plugin): check for valid identifiers from Kotlin metadata (PR #2041 )
2023-11-10 22:29:54 +00: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
41d986bdca
feat(script): use cache for compiled scripts
2023-10-27 23:35:03 +03:00
Skylot
192a8116f1
chore: update FlatLaf
2023-10-27 23:35:01 +03:00
Markslin
173d85bf84
fix(res): resolve resourceIds reuse issue (PR #2037 )
...
Co-authored-by: mingyinsun <mingyinsun@tencent.com >
2023-10-24 18:47:17 +01:00
Skylot
b310e92d7a
fix: inline CMP instructions to help conditions merge ( #2033 )
2023-10-21 23:08:00 +01:00
Skylot
4a92ee07cc
fix(gui): hide not needed popup action for not editable code
2023-10-21 23:08:00 +01:00
Skylot
fdffe20c46
fix(gui): another try to fix code search
2023-10-21 23:08:00 +01:00
Skylot
15d464d620
fix(gui): improve code and method search ( #2033 )
2023-10-18 21:53:40 +01:00
Skylot
1bd4526e4c
fix: improve restructure of nested try/catch/finally blocks ( #2033 )
2023-10-15 20:06:35 +01:00
Skylot
816308e3ca
chore: update dependencies
2023-10-15 20:06:35 +01:00
rawer886
cfd851a980
fix: use correct imports for classes from default package (PR #2031 )
...
* fix: use fully qualified package names for classes of defpackage
* fix: use correct imports for classes from default package (#2027 )
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-10-11 20:04:03 +01:00
Julian Burner
d129be7e86
fix: update to Mapping-IO 0.5 (PR #2029 )
...
* Update to Mapping-IO 0.5
* Fix Spotless error
* Fix Spotless error (2)
* Sort mappings by name when exporting
2023-10-09 18:46:51 +01:00
Skylot
6433fcef72
chore: update gradle and dependencies
2023-10-07 18:08:44 +01:00
Jan S
d120556772
fix(res): add resource entry offset check (PR #2024 )
2023-10-06 17:25:36 +00:00
Skylot
19f40b8549
feat(cli): add option to show available plugins list
2023-09-27 19:44:58 +01:00
Skylot
89acf73010
feat(plugins): cache available plugin list
2023-09-27 19:44:53 +01:00
Goooler
b70276d896
fix(gui): update zh_CN translation (PR #2022 )
2023-09-27 16:19:11 +01:00
5idereal
76b370e249
update zh_TW translation ( #2021 )
2023-09-26 17:15:09 +01:00
Skylot
b73f2ef0b9
fix(res): place xml attributes on new line ( #2012 )
2023-09-24 20:40:33 +01:00
Skylot
762c2d70bd
chore: fix typos
2023-09-24 18:53:39 +01:00
Skylot
4e81bdd76f
chore: update dependencies
2023-09-22 20:32:40 +01:00
Skylot
4d87b447a6
chore: remove unused code in ClsSet class ( #2020 )
2023-09-22 20:31:56 +01:00
Roni Ragil Iman Khoirul
8f0d0e4f4d
feat: add Indonesian translation (PR #2018 )
...
* Add Indonesian translation
* fix load i18n resources with deprecated language codes
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-09-20 19:26:59 +01:00
Skylot
c39a696977
feat(script): add methods for apply renames and reload tabs ( #2008 )
2023-09-15 21:50:47 +01:00
Cesaryuan
b78a0257b4
fix(gui): improve highlight in UsageDialog ( #2006 )(PR #2007 )
2023-09-15 16:19:13 +01:00
xnumad
cdede7eca4
docs: update Arch Linux version badge (PR #2005 )
2023-09-14 18:33:31 +01:00
Skylot
72180164d8
chore(script): add example for rename method param from annotation ( #2004 )
2023-09-12 20:22:14 +01:00
Skylot
2dc0db230c
chore(script): adjust scripts format
2023-09-12 20:21:02 +01:00
Skylot
24657f6b3c
fix(plugins): add a better way to init plugins options
2023-09-11 21:50:48 +01:00
Skylot
e358476c71
fix: attempt to improve package rename checks ( #1997 )
2023-09-09 20:16:57 +01:00
Skylot
45a637f33b
feat: allow to disable zip security checks ( #1579 , #980 )
2023-09-09 16:10:59 +01:00
Skylot
76cf9596e2
build: fix win bundle script
2023-09-07 20:06:40 +01:00
Skylot
95c07a4e76
fix: synchronize attributes map writes ( #2001 )
2023-09-07 16:59:20 +01:00
Skylot
2d1d5a419c
chore: update dependencies, resolve gradle warnings
2023-09-07 16:15:05 +01:00
dependabot[bot]
f45547e2c1
build(deps): bump actions/checkout from 3 to 4 (PR #2000 )
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-04 18:57:40 +01:00
Jan S
1f463c7152
fix: exclude ZIP entries of less than 25MB uncompressed size from ZIP bomb check ( #1570 )(PR #1998 )
2023-09-02 17:58:09 +01:00
Skylot
2c92c6b0a6
chore(script): add example deobf from toString script ( #1996 )
2023-09-01 21:18:58 +01:00
Skylot
f83ee45ac8
chore: update gradle and dependencies
2023-08-31 21:31:56 +01:00
Jan S
f695fafe74
chore(debugger): improve code and add details to error messages (PR #1982 )
...
* chore: created list entry getter getRegListEntry for problematic code;
use specific containers/fields instead of SimpleEntry;
* chore: include details on the used ArtAdapter in error message
* add device info to registers exception
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-08-30 22:58:59 +01:00
Skylot
f6ab105ef7
chore: use github issue forms for templates
2023-08-11 20:28:35 +01:00
Skylot
f81a2c4ebb
chore: update dependencies
2023-08-11 17:36:14 +01:00
Skylot
c602b3d967
feat: add support for 'package-info' ( #1967 )
2023-08-07 18:46:49 +01:00
Skylot
f213082da5
feat(gui): load available plugins from jadx-plugins-list
2023-08-05 22:41:51 +01:00
Skylot
8d26fa2a89
build: don't publish to maven rename-mappings plugin
2023-08-05 19:27:15 +01:00
Skylot
a06231d007
fix(plugins): do not parse kotlin metadata if all options disabled
2023-08-05 19:26:28 +01:00
Mino
68b84ea786
feat(gui): allow user to set custom shortcuts ( #1479 )(PR #1980 )
...
* feat(gui): allow user to customize shortcuts
* internal: fixed other constructor for jadx action
* make code area actions customizable
* show warning dialog when mouse button is commonly used
* applied code formatting
* code formatting and and moved string to resources
* moved action related classes to their own package
* added fix for actions with modifiers in macos
* ignore left click in shortcut edit
* applied code formatting
* warn user when a duplicate shortcut is entered
* save shortcut when key is pressed (instead of typed)
* fix node under mouse being ignored
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
* add missing import
* applied code formatting
* added custom shortcuts support to script content panel
* save shortcut when key is released (instead of pressed)
* enable custom shortcut in script autocomplete
* fix duplicate shortcut warning when the shortcut is set again at the same action
* fixed mouse buttons shortcut not working for code area
* fix exception with mouse button shortcuts
* fix action getting fired twice
* added variants for forward and back nav actions
* fix exception when shortcut is not saved
* fix mouse button shortcut for auto complete action
* consume mouse event if bound to an action
* workaround not being able to extend HashMap
* fix exception in script code area when using mouse button shortcut
* minor pref serialiazation improvement
* fix action buttons not working (like run action)
* fix exception with plugin actinos
* fixed nullptr when adding an action with null actionmodel to jadxmenu
* fix plugin action name not showing
---------
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2023-08-03 20:05:25 +01:00
Skylot
868e99e0b5
build: add windows host for build tests
2023-08-01 18:44:53 +01:00
Mino
95db98e574
fix: resolve exception when androidmanifest.xml is not found (PR #1978 )
2023-07-31 22:27:52 +01:00
Mino
63fc7e05b6
refactor: reuse the same parser in main activity action and gradle export feature (PR #1971 )
...
* internal: reuse the same parser in Main Activity action and export gradle project
* removed unnecessary logs
* fixed code formatting issues
* removed no longer used methods
* optimize imports
* fix exception when app name isn't found
* use EnumSet instead of int for parse flags
* moved ApplicationParams class under android utils package
* moved attributes parsing to a seperate method
* fallback to any strings.xml if default one is not found
2023-07-31 18:50:47 +01:00
Jan S
2c2bb64c09
fix(tests): ResXmlGenTest fails on Windows (PR #1972 )
...
* fix(core): fix ResXmlGenTest fails on Windows
* code style
2023-07-31 17:51:59 +01:00
Mino
0f5d07c6b1
feat(gui): hex-viewer for binary asset files ( #198 )(PR #1969 )
...
* implemented hex-viewer feature
* added support for opening lib (.so) files
* removed unused class
* fix formatting
* fixed error when opening an empty file
* fixed a slight inaccuracy in synchronizing highlights
* defaulted little endian to false
* synchronize hex editor with theme and use smali font
* fixed wrong displayed values
* applied code formatting
* fixed selection color in preview panel
* Changed Smali Editor font entry in settings less confusing
2023-07-31 00:02:39 +01:00
Ohad Shai
fbb6aa580e
chore: upgrade to kotlin-logging 5 (PR #1966 )
...
* upgrade to kotlin-logging 5
* apply code autoformatting
* resolve deprecation warnings
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-07-30 19:02:56 +01:00
Mino
d9692a4f5f
feat(gui): add 'go to main activity' action ( #1423 )(PR #1965 )
...
* implemented feature: 'go to main activity'
* fix code formatting (added braces to if statements)
* search main activity by original class name, handle exceptions
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-07-29 21:03:25 +01:00
Mino
ef0c09ca5b
feat(gui): show number of search results in search bar ( #1819 )(PR #1964 )
...
* gui: show number of search results in search bar, closes #1819
* optimized imports
* use string from resources
* applied code formatting
2023-07-28 22:17:04 +01:00
Skylot
752c61ae71
fix: disable zip file checks for new JVM versions ( #1962 )
2023-07-28 20:09:54 +01:00
Skylot
8f635076ea
fix(gui): allow html for empty package name ( #1961 )
2023-07-26 21:03:55 +01:00
Skylot
8d5130a329
chore: update gradle and dependencies
2023-07-26 21:03:54 +01:00
Skylot
09a5e0893b
fix: handle classes 'super' loop ( #1942 )
2023-07-24 21:59:27 +01:00
Jan S
de8c315a7a
fix(gui): display Quark stderr output in Jadx log ( #1955 )(PR #1957 )
...
* Quark: also display error stream in Jadx log
* use info log level, open log viewer to track progress
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-07-24 18:03:37 +01:00
JustFor
3abdd40498
fix(gui): update Messages_zh_CN.properties (PR #1951 )
2023-07-17 18:45:47 +01:00
Skylot
5b7ebec7e3
feat(gui): add option to set cache location, view/delete exists caches ( #1941 )
2023-07-17 00:49:40 +03:00
Yoav Sternberg
de603ef909
fix(gui): support inline node for jump to code ( #1905 )(PR #1950 )
2023-07-15 18:58:16 +01:00
JustFor
a0a6779097
fix(gui): update Messages_zh_CN.properties (PR #1949 )
...
1. Fill in the missing information
2. Sync new texts.
2023-07-12 16:36:43 +01:00
nitram84
ce9645864d
fix(res): support formatted=false for strings (PR #1947 )
2023-07-09 20:05:29 +01:00
Skylot
d076c4e73d
build: migrate to kotlin dsl in gradle scripts, update gradle and deps
2023-07-08 20:13:37 +01:00
Skylot
3e4c6a9c51
refactor(gui): don't use map for store open tabs order ( #1940 )
2023-07-06 17:14:31 +01:00
Skylot
74a2d7d5e7
doc: update contributing guide
2023-07-05 23:21:02 +01:00
bytemarx
219f9ebede
feat(gui): close all tabs to the right ( #1939 )(PR #1940 )
...
* feat(gui): close all tabs to the right (#1939 )
* remove usage of LinkedHashMap as variable type
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-07-05 22:54:19 +01:00
Skylot
ba0e918fef
chore: update dependencies
2023-07-05 20:20:01 +01:00
Skylot
9b75a4f199
fix: update raung to fix stack frame issue ( #1932 )
2023-07-05 19:43:24 +01:00
Skylot
2d65594383
fix: additional checks for class alias string ( #1937 )
2023-07-04 21:25:38 +03:00
nitram84
36f439a82b
fix(res): resolve all custom attributes (PR #1933 )
2023-07-04 19:21:32 +01:00
5idereal
0efc99e43e
fix(lang): update zh_TW translation (PR #1938 )
2023-07-04 19:20:37 +01:00
nitram84
c0c35f32a8
fix(gradle): avoid BuildConfig conflict ( #1847 ) (PR #1931 )
2023-07-01 16:41:57 +01:00
Skylot
53e51c76a5
fix(plugins): use default args hash supplier in kotlin metadata plugin ( #1929 )
2023-06-30 16:33:22 +01:00
Midori Kochiya
14265a7b70
fix(res): parse strings only when they are referenced ( #1926 )(PR #1928 )
...
* Parse strings only when they are referenced
* Fix style
2023-06-28 21:29:46 +01:00
nitram84
4467f9118f
fix: update class set to Android 34, add apache http client support for api level 28+ (PR #1927 )
...
* fix(cli): fix jcst converter
* extend jcst format, update class set to Android 34, add optional android libs
* fix(gradle): add apache http client support for api level 28+
* don't require existing core.jcst file for convert cls set, improve performance
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-06-28 20:54:28 +01:00
Julian Burner
240a903438
fix: don't override passed mappings path ( #1891 )(PR #1925 )
...
* Don't override passed mappings path
* Fix spotless error
2023-06-28 18:20:34 +01:00
chaos
afa331e8fc
feat(gui): register macOS specific open file handler ( #1922 )(PR #1923 )
...
* feature:支持双击文件后直接打开jadx-gui
* additional checks
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-06-20 18:36:37 +01:00
Skylot
6620e650ef
fix: check args of inlined insns on reorder ( #1919 )
2023-06-19 15:05:06 +01:00
Skylot
2aa7438346
fix: check source file name alias uniqueness before rename ( #1913 )
2023-06-17 16:41:50 +01:00
Skylot
26fb7f33fb
fix(script): use script log for show stages exceptions ( #1912 )
2023-06-15 21:12:01 +01:00
Skylot
6f4451364b
fix(script): use compile instead analyze for scripts with deps ( #1912 )
2023-06-15 21:10:11 +01:00
Skylot
1a642108ef
fix(script): temp workaround to disable script checks before run ( #1912 )
2023-06-14 09:43:51 +01:00
Skylot
dddb7b2878
fix: don't inline consts into anonymous class constructor ( #1901 )
2023-06-13 21:35:15 +01:00
nitram84
82cafe6e94
fix(res): support min attr for attrs (PR #1909 )
2023-06-12 14:50:10 +01:00
Skylot
b578479270
fix(res): remove first empty line in public.xml ( #1907 )
2023-06-11 13:43:55 +01:00
Skylot
85b77cd3c0
chore: update dependencies
2023-06-11 13:42:47 +01:00
Skylot
38c3f8bf9a
fix: additional insns reorder checks ( #1904 )
2023-06-10 23:36:14 +01:00
Yoav Sternberg
f558203a9d
feat(api): access node under caret/mouse and jump (PR #1903 )
...
* Access node under caret/mouse and jump
* Apply lint
2023-06-09 15:50:57 +01:00
Skylot
347d6e2c2e
refactor: improve github plugin resolver
2023-06-07 22:09:06 +01:00
Skylot
eb4d540b04
chore: update dependencies
2023-06-07 21:20:05 +01:00
cskwrd
83b6ffbba9
fix(gui): fix spelling (PR #1897 )
2023-06-07 16:47:39 +01:00
Skylot
50c5f0874f
feat(gui): manage plugins in preferences window
2023-06-06 22:29:31 +01:00
Skylot
a72e6aeafe
feat(plugins): allow to set custom settings page in jadx-gui
2023-06-06 21:58:30 +01:00
Skylot
683cd76cc5
feat: add events support ( #1832 )
2023-06-06 21:58:29 +01:00
Goooler
df313dbfec
fix: replace jcenter with mavenCentral in export gradle files (PR #1896 )
...
jcenter is deprecated, we can use mavenCentral as one of the default maven repo.
2023-06-06 13:26:01 +01:00
Skylot
2e3579a8fd
fix(gui): disable rename action in tree popup if not allowed ( #1890 )
2023-06-03 14:38:33 +01:00
Skylot
99c8ceae9a
fix(gui): don't reset package alias on class rename ( #1732 )
2023-06-03 16:20:44 +03:00
Julian Burner
fa67f4fef7
fix: preserve renames on mapping export ( #1732 )(PR #1893 )
2023-06-03 14:20:06 +01:00
Skylot
e9a7ccd00c
fix: don't change annotated code on finish ( #1732 )
...
Remove first empty line break annotation positions, can occur for classes in default package
2023-06-02 21:41:38 +01:00
Skylot
76e5824d99
feat(test): add util methods for renames in test ( #1885 )
2023-05-27 19:55:28 +01:00
Skylot
3bf101d7ac
feat(gui): split settings into pages
2023-05-27 15:40:38 +01:00
myzhan
c28320e1b2
feat(gui): add an action to prettify json file in resources (PR #1880 )
...
* feat(gui): add an action to prettify json file in resources
* fix build
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-05-25 21:56:06 +01:00
nitram84
ea5b66d463
fix(gradle): add legacy support for vector drawables (PR #1879 )
2023-05-25 20:19:26 +01:00
Skylot
8a67c39279
feat(cli): install and manage plugins from command line
2023-05-23 17:53:48 +01:00
Skylot
67054bda3d
fix: add rename reason for method merged with bridge ( #1876 )
2023-05-20 14:06:31 +01:00
Skylot
ed4c5a3a17
fix: use shadow jar in app bundle to reduce jars count ( #1868 )
2023-05-18 20:40:39 +01:00
Skylot
ae1b1ce99e
fix(build): use Kotlin with explicit project dependency
2023-05-17 21:26:55 +01:00
Skylot
5d3c96ead2
chore: update dependencies
2023-05-17 15:12:51 +01:00
Krzysztof Iwaniuk
63ad7fb128
feat: add option for hexadecimal integer format globally (PR #1869 )
...
* option for hexadecimal integer format globally
* fix i18n strings, update readme
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-05-15 13:58:13 +01:00
Krzysztof Iwaniuk
ccdbb1d62c
feat: parse and use Kotlin metadata for renames ( #1861 )(PR #1860 )
...
* initial setup for data class and metadata parsing
* bug fix & comments
* better version using plugin system
* added tests
* ignore getters test fix
* logs & imports
* reverted accidental changes
* moved util classes to plugin, spotless apply
* move test and some other minor fixes
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-05-14 21:34:40 +01:00
Skylot
3474f0da04
fix: split loop exit at loop end ( #1866 )
...
Loop exit (like condition) in loop end block can confuse loop restructure.
To resolve this try to split back edge and make loop end a simple path.
2023-05-13 22:10:21 +01:00
Skylot
0fd9a9df29
fix: check for annotations before remove empty default constructor ( #1863 )
2023-05-11 18:11:02 +01:00
bagipro
e29011eb95
fix(res): update Android resources to API 34 (PR #1864 )
...
* update android resources to API 34
* fix format issues
---------
Co-authored-by: bagipro <bugi@bugi>
Co-authored-by: Skylot <skylot@gmail.com >
2023-05-11 17:26:02 +01:00
Skylot
f52d2814df
fix(gui): queue UI settings update ( #1859 )
2023-05-08 17:01:26 +01:00
Skylot
6e507f0cdc
fix(script): don't use modules to build script classpath ( #1858 )
2023-05-07 20:19:38 +01:00
Skylot
f825901849
chore: update dependencies
2023-05-07 20:17:46 +01:00
Skylot
5aaceee978
fix: cache finally extract checks on multiple paths ( #1853 )
2023-05-06 18:41:29 +01:00
Skylot
f53dbbfebf
feat: option to disable inner classes move to parent ( #1817 )
2023-05-06 20:39:50 +03:00
nitram84
d29263ef57
fix(res): fix escaping for string arrays
2023-05-06 20:38:13 +03:00
nitram84
d8c8fb4e18
test(res): add unit tests for ResXmlGen
2023-05-06 20:38:13 +03:00
Skylot
835f9fb5e0
chore(build): use official gradle build action
2023-05-01 21:31:36 +03:00
JustFor
ecbcbbe8d4
fix(gui): update CN translation (PR #1852 )
...
Fixed the problem of indistinguishable after English translation.
2023-04-28 22:25:15 +01:00
Skylot
37b1bff8f2
fix(gui): adjust node by offset search in code area ( #1845 )
2023-04-25 21:28:27 +01:00
Skylot
5e8f9b900f
fix: remove class filtering on export ( #1847 )
2023-04-25 17:12:42 +01:00
Skylot
ddefead764
chore(build): check java version ( #1846 )
2023-04-25 14:23:11 +01:00
Skylot
54f83cee1c
fix: run code schrink after insn args simplify ( #1838 )
2023-04-24 22:25:09 +01:00
Skylot
7f3bd8c668
fix: additional checks for primitive deboxing ( #1838 )
2023-04-24 22:25:09 +01:00
Skylot
ea10f2af47
fix(build): set jvm target version for all kotlin tasks
2023-04-24 22:21:20 +01:00
Skylot
2d810a2864
chore(build): update gradle
2023-04-24 22:21:20 +01:00
George Hopkins
bac2386a1a
fix: add parentheses around multiple lambda arguments (PR #1840 )
...
* fix: add parentheses around multiple lambda arguments
* add simple test case
---------
Co-authored-by: Skylot <skylot@gmail.com >
2023-04-24 19:59:59 +01:00
Skylot
06ec12ba17
fix(script): use default script compiler args
2023-04-21 15:50:06 +01:00
JustFor
7f713e5592
fix(gui): update Messages_zh_CN.properties (PR #1831 )
2023-04-21 14:42:02 +01:00
Skylot
ee2556ecb6
fix(gui): update mappings node instead full reload on 'save as' ( #1732 )
2023-04-20 22:00:06 +01:00
Skylot
e57787393e
chore(build): fix gradle tasks dependencies
2023-04-20 19:46:59 +01:00
Skylot
b7634024d6
chore: update gradle and dependencies
2023-04-20 17:22:16 +01:00
Skylot
9417671606
refactor: extract input-api into library ( #1821 )
2023-04-20 17:22:16 +01:00
Skylot
2e652b4219
fix(plugins): use loaded mapping tree on export ( #1732 )
2023-04-20 17:22:16 +01:00
Skylot
1d6ebed7e5
chore: fix spotless apply
2023-04-20 17:22:16 +01:00
Skylot
19cf22b9e3
chore: update Eclipse formatter config
2023-04-20 17:22:16 +01:00
Skylot
75fbdd3ac4
chore(build): set required Java version to 11, update dependencies
2023-04-20 17:22:16 +01:00
Skylot
13e317d927
fix(gui): resolve active tab restore issue
2023-04-20 17:22:15 +01:00
Skylot
7a309ca367
fix: improve plugins data handling
2023-04-20 17:22:15 +01:00
Skylot
a992c93198
fix(plugins): improve custom passes merge ordering
2023-04-20 17:22:15 +01:00
Skylot
ee3a653c1b
fix(gui): show options from all plugins
2023-04-20 17:22:15 +01:00
Skylot
e8e7028792
perf: improve usage data apply
2023-04-20 17:22:15 +01:00
Skylot
2403d32ae4
feat(gui): use plain json config instead java preferences
2023-04-20 17:22:15 +01:00
Skylot
1c89c7290c
fix(gui): discard old settings migrations
2023-04-20 17:22:15 +01:00
Skylot
1891f6fd7e
fix: ignore source name if current alias is better ( #1795 )
2023-04-20 17:22:14 +01:00
Skylot
e933b41236
script: replace method call with calculated result ( #1251 )
2023-04-20 17:22:14 +01:00
Skylot
9f7432134c
feat(gui): show loaded mapping file in input nodes
2023-04-20 17:22:14 +01:00
Skylot
7d69e5aaab
feat(gui): add script log open button
2023-04-20 17:22:14 +01:00
Skylot
780b1a0d53
fix(gui): resolve ktlint deprecation warnings
2023-04-20 17:22:14 +01:00
Skylot
ea37f3e9f7
fix: don't inline constants into lambdas
2023-04-20 17:22:14 +01:00
Skylot
c6ed117df6
fix: improve internal state checks
2023-04-20 17:22:14 +01:00
Skylot
cedcc29e01
chore(gui): add missing keys for new i18n file
2023-04-20 17:22:13 +01:00
Skylot
d5219e7f0c
feat: allow to move class to another package
2023-04-20 17:22:13 +01:00
Skylot
9a6dec0dbd
fix: scripts runtime code and docs clean up
2023-04-20 17:22:13 +01:00
Skylot
17574ee554
chore: update dependencies
2023-04-20 17:22:13 +01:00
Skylot
926f4e497a
feat(gui): allow to dock log viewer, new filter modes
2023-04-20 17:22:13 +01:00
Skylot
acbe94df27
feat(script): add code area popup menu action
2023-04-20 17:22:13 +01:00
Skylot
a2f018a00b
feat(gui): add run, check and format script actions
2023-04-20 17:22:12 +01:00
Skylot
98cc1b1022
script: add sample deobf by code script ( #1706 )
2023-04-20 17:22:06 +01:00
Skylot
745f46f81f
build: configure spotless for kotlin, apply code style fixes
2023-04-20 19:01:41 +03:00
Skylot
6912ed40b4
feat(gui): save usage data into disk cache
2023-04-20 19:01:41 +03:00
Skylot
a89dbc1152
refactor: make input plugin api similar to pass plugins
2023-04-20 19:01:40 +03:00
Skylot
0c4d46ead5
refactor: move plugins-api module into jadx-core
2023-04-20 19:01:39 +03:00
Skylot
eae9bac938
refactor: move mappings feature to separate plugin module
2023-04-20 19:01:39 +03:00
Julian Burner
cb91c8c41c
feat: mapping-io import support ( #1531 )(PR #1532 )
...
* Add new CLI args for mapping files and deprecate args regarding jobf files (will be moved to the cache dir in the future)
* Add support for importing method arg mappings
Also change `mapping-file` to `mappings-path`, since folders are supported, too
* Add GUI for importing mappings
* Also show save file dialog when exporting mappings
* Fix crash on startup when `--mappings-path` parameter is set
* Include imported renames when exporting mappings
* Add "close mappings" menu entry
* Don't instantiate MappingTree unless actually needed
* Terminology: `import` → `open`; `export` → `save`
* Save location of open mapping file into project data
* Correctly reset cache when loading new mappings
* Remove unused import
* Save opened mappings' last modified date to reset cache when changed
* Fix if statement
* Correctly handle absence of mappings path in project data
* Show overwrite warning for folders only if not empty
* Prevent crash when imported mappings don't have any namespaces
* Handle wrong mappings namespace count error
* Replace unneeded public with private
* Add option for saving open mappings directly to disk
* Correctly propagate and throw exceptions during decompiler init
* Respect opened mappings' existing namespaces; fix related crash
* Deduplicate code, add `DalvikToJavaBytecodeUtils` class
* Small cleanup; move more functionality to utility class
* Support for importing class, field and method mappings
* Handle mappings in RenameDialog
* Fix checkstyle
* Fix wrong naming order
* Use modified mapping-io JAR from https://github.com/skylot/jadx/commit/18070eb7a649db0b0daef38d456316d5b4650072
That commit got rid of redundant embedded libraries
* Add null checks
* Check if mapping tree is null before running MappingsVisitor
* Use working mapping-io build
* Handle cache invalidation directly in DiskCodeCache class
* Don't reset UserRenamesMappingsMode if project is just reloaded
* Fix checkstyle
Co-authored-by: Skylot <skylot@gmail.com >
2023-04-20 19:01:38 +03:00
Skylot
cb1f3e9843
refactor: use package nodes in api and ui
2023-04-20 19:01:38 +03:00
Skylot
d4927db52b
refactor: split and simplify deobfuscator
2023-04-20 19:01:37 +03:00
Skylot
bc7300bd01
feat: add package node, allow to rename packages
2023-04-20 19:01:36 +03:00
Skylot
278d7fa3f9
feat(script): add options support
2023-04-20 19:01:35 +03:00
Skylot
d9af91bc4d
feat(gui): add auto complete for jadx scripts
2023-04-20 19:01:35 +03:00
Skylot
18fe9f305c
feat(gui): support scripts in UI
2023-04-20 19:01:34 +03:00
Skylot
e5e64365fc
feat: add base scripting support
2023-04-20 19:01:29 +03:00
Skylot
fdf170529f
fix: use strict patterns for synthetic methods inline ( #1829 )
2023-04-19 17:52:37 +01:00
Skylot
50283ab543
fix: additional checks to forbid inline of null consts ( #1828 )
2023-04-19 15:49:06 +01:00
Skylot
3fa3e5acec
fix: correct args shift for instance invoke-custom ( #1816 )
2023-04-16 20:10:57 +01:00
Skylot
4230cd5b5a
feat(plugins): allow to load classes using input stream or byte array in jadx-input plugin ( #1457 )
2023-04-10 21:28:53 +01:00
nitram84
1ad6527de5
fix(xml): use parent attibute only for styles (PR #1815 )
2023-04-10 18:34:17 +01:00
nitram84
0421ad80c1
fix: filter invalid chars in app name for gradle export (PR #1813 )
2023-04-08 18:16:14 +01:00
nitram84
35e0201f06
fix(gradle): fix gradle build with version 7.4.2 - 7.6
2023-04-08 19:49:15 +03:00
nitram84
118eea5e77
fix(res): set empty parent for styles without a parent, remove duplicated code
2023-04-08 19:49:15 +03:00
nitram84
7f317be325
fix(res): resolve declare-styleable atrributes
2023-04-08 19:49:15 +03:00
nitram84
e1aa9f6de4
fix(res): resolve custom attributes
2023-04-08 19:49:15 +03:00
nitram84
058a5e3bb2
fix(res): resolve int hex attributes
2023-04-08 19:49:15 +03:00
JustFor
92b49ec2b5
fix(gui): update Messages_zh_CN.properties (PR #1811 )
...
sync new text, and Some symbols are translated
2023-04-07 19:20:15 +01:00
Skylot
583a04b092
fix(gui): show skipped resources count during search ( #1808 )
2023-03-24 22:00:07 +00:00
Skylot
444a04e2f7
fix(gui): redirect jump from search for inlined classes
2023-03-24 15:34:46 +00:00
Skylot
157e702ffd
feat: inline lambdas by instance field ( #1800 )
2023-03-24 15:34:45 +00:00
Jan S
77892f41ec
fix(res): parsing of sparse RES_TABLE_TYPE_TYPE and RES_TABLE_TYPE_STAGED_ALIAS chunks ( #1806 #1803 )(PR #1807 )
2023-03-23 17:30:29 +00:00
Jan S
6ba0e1dbf6
fix(res): handle RES_TABLE_TYPE_OVERLAY ( #1748 ) (PR #1804 )
2023-03-18 14:23:49 +00:00
Skylot
950fbbaa83
fix: restore missing type parameter declarations ( #1800 )
2023-03-17 20:28:42 +00:00
Skylot
912c431511
fix(debugger): process UI updates in correct thread ( #1796 )
2023-03-17 14:23:36 +00:00
Skylot
5d6b82724a
fix(gui): search constant fields usage in all classes ( #1801 )
2023-03-16 17:41:23 +00:00
Jan S
78c976ad4f
fix(res): resolve manifest decoding error Expected strings start ( #1797 )(PR #1798 )
2023-03-10 18:46:31 +03:00
Skylot
fbdfd135da
fix(cli): use common enum args parser ( #1787 )
2023-02-27 19:35:49 +00:00
Jacob Davis-Hansson
dd51783d9e
fix(cli): make enum CLI arguments match documented format (PR #1787 )
...
Currently if you do `jadx --help`, it says the `--deobf-cfg-file-mode` option accepts the value `read-or-save`.
However, if you give it that option, it instead prints the following error message:
```
java.lang.IllegalArgumentException: 'read-or-save' is unknown, possible values are: read, read-or-save, overwrite, ignore
at jadx.cli.JadxCLIArgs$DeobfuscationMapFileModeConverter.convert(JadxCLIArgs.java:524)
at jadx.cli.JadxCLIArgs$DeobfuscationMapFileModeConverter.convert(JadxCLIArgs.java:516)
at com.beust.jcommander.JCommander.convertValue(JCommander.java:1340)
at com.beust.jcommander.ParameterDescription.addValue(ParameterDescription.java:249)
at com.beust.jcommander.JCommander.processFixedArity(JCommander.java:920)
at com.beust.jcommander.JCommander.processFixedArity(JCommander.java:901)
at com.beust.jcommander.JCommander.parseValues(JCommander.java:731)
at com.beust.jcommander.JCommander.parse(JCommander.java:363)
at com.beust.jcommander.JCommander.parse(JCommander.java:342)
at jadx.cli.JCommanderWrapper.parse(JCommanderWrapper.java:37)
at jadx.cli.JadxCLIArgs.processArgs(JadxCLIArgs.java:211)
at jadx.cli.JadxCLI.execute(JadxCLI.java:35)
at jadx.cli.JadxCLI.main(JadxCLI.java:20)
```
This commit changes all the enum parsers to do the inverse string of `enumValuesString`, so the documented behavior works.
2023-02-27 19:08:07 +00:00
Skylot
158fc2fca3
chore: update raung version
2023-02-18 15:46:08 +00:00
Skylot
24284a6f3a
fix: process manifest before other resources ( #1740 )
2023-02-17 17:54:07 +00:00
Skylot
85c2c63aa3
fix: output unknown invoke-custom as polymorphic call ( #1760 )
2023-02-11 16:06:30 +00:00
Skylot
f354f7de63
fix(gui): split tabs loading to prevent ui dead lock
2023-02-11 14:01:31 +00:00
Skylot
540c0a8100
feat: support polymorphic invoke ( #384 )( #1777 )
2023-02-03 16:28:24 +00:00
Skylot
4d00fede56
fix: resolve JavaNode caching issues ( #1775 )
2023-02-02 19:39:42 +00:00
Skylot
b1bc5c08ff
chore: update dependencies
2023-02-02 15:23:54 +00:00
Ran Naor
305d4f4fe5
fix(gui): print the renamed function name in a frida snippet log ( #1772 )(PR #1773 )
...
* frida snippet log now prints the correct method name if the method was renamed
* fixed spotless check in frida snippet
* get the renamed method name from the alias proprety and changed to format string to fit frida-trace style
* fixed import order to fix gradle spotless warning
2023-01-28 17:59:42 +00:00
Ran Naor
2d149e9a5d
fix(gui): allow html in JVariable to render renaming of variables correctly ( #1769 )(PR #1770 )
2023-01-27 17:03:43 +00:00
Ran Naor
87b9ff3c35
feat(gui): added keyboard shortcut ctrl+w to close tab ( #1765 )(PR #1766 )
2023-01-21 17:22:36 +00:00
Zach Snell
1c36b3c74c
fix(gui): quick fix for duplicate/overlapping logcat windows ( #1752 )(PR #1761 )
...
* Simple fix to duplicate/overlapping logcat windows. Could be improved by not re-creating UI every time
* Apply suggestions from code review
* Another try to fix trailing spaces using GitHub suggestions
Co-authored-by: Zach Snell <zach.snell@bivalogic.com >
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2023-01-21 17:07:27 +00:00
Skylot
068e4b8e3d
fix: allow altMetafactory method in lambda call site ( #1760 )
2023-01-15 16:08:34 +00:00
Skylot
df38a6424f
fix(gui): make bytecode output closer to smali ( #1739 )
2022-12-25 18:53:25 +00:00
Skylot
5d186e56a5
chore: update dependencies
2022-12-25 18:53:25 +00:00
Skylot
0fafcfa006
fix(gui): improve smali disasm method param write ( #1739 )
2022-12-13 17:40:00 +00:00
jmlitfi
e3fdbafd86
fix(gui): resolve exception in smali method writer ( #1739 )(PR #1745 )
...
Co-authored-by: jmlitfi <jeffmlitfi@gmail.com >
2022-12-13 17:39:20 +00:00
bagipro
07c2b14479
fix: escape special characters in AAB resources (PR #1747 )
...
Co-authored-by: bagipro <bugi@macbook-pro-3.local >
2022-12-13 17:34:16 +00:00
Artem Zhiganov
cdc844aaf3
feat(gui): add Russian Translation (PR #1744 )
2022-12-10 13:11:34 +00:00
Skylot
e1b7d361b9
fix: check full signature for search method override ( #1743 )
2022-12-09 17:13:01 +00:00
Skylot
12ef29bebc
chore: update gradle and dependencies
2022-12-09 17:13:01 +00:00
Skylot
22ed241d50
fix(gui): correct html render in comments search results
2022-11-15 13:53:48 +00:00
Shatyuka
28e5a3c5be
fix(gui): hi-dpi main window initial size ( #1728 )(PR #1729 )
2022-11-14 18:19:09 +00:00
Skylot
bb4d88cc68
fix(gui): add template for constructor and void methods to Frida snippet ( #1714 )
2022-11-07 19:13:11 +00:00
Mathis Hesse
4aaea2b93f
fix(gui): change callMethodName of constructors in Frida action ( #1714 )(PR #1715 )
...
* Change callMethodName of constructors in Frida action
* Fix format violation in FridaAction
* Fix format violation in FridaAction
2022-11-07 19:11:22 +00:00
Skylot
bc8d7c4fc3
feat(gui): add native libs info to summary ( #1717 )
2022-11-03 19:15:33 +00:00
Skylot
5ea6c46778
fix(gui): show all code sources in summary (remove dex filter) ( #1716 )
2022-11-03 18:25:22 +00:00
Skylot
b28f8ba85b
fix(gui): try to handle exception in RSTA.getPreferredSize() ( #1712 )
2022-10-29 21:17:17 +01:00
Skylot
4db50fb749
fix(gui): correct html disabling in search results
2022-10-27 10:29:50 +01:00
Skylot
1dd0c90a04
build: switch java version to fix jdk install issue
2022-10-26 20:34:22 +01:00
Skylot
2bace2bde2
fix(gui): disable shell folders in file open dialog ( #1709 )
2022-10-26 20:08:57 +01:00
Skylot
1a9cb832ab
feat(gui): add alternative file open dialog ( #1709 )
2022-10-26 19:58:58 +01:00
Skylot
6844a46c93
fix: disable HTML rendering in labels if not needed
2022-10-20 15:58:23 +01:00
Skylot
e9e45707da
chore: update dependencies
2022-10-20 14:54:31 +01:00
Skylot
b9d02ff4c4
refactor: remove all LinkedList usage
2022-10-12 17:05:08 +01:00
Jan S
29b64300bc
fix(gui): multi-threading issue in DebugController fixed ( #1701 ) (PR #1702 )
2022-10-11 19:21:06 +01:00
zhongqingsong
777355e86e
fix(gui): update Messages_zh_CN.properties (PR #1700 )
...
Add new text about logcat.
2022-10-10 18:57:58 +01:00
Skylot
620a177ce8
fix: restore enum class with custom code in static init ( #1699 )
2022-10-08 21:54:06 +01:00
Skylot
683c2dfbeb
fix: improve ternary inline, resolve more enum cases ( #1686 )
2022-10-07 15:51:11 +01:00
Skylot
266cbcc6f4
fix(gui): migrate to fixed jdwp library fork ( #1471 )
2022-10-06 19:47:15 +01:00
Jan S
8a45602ae6
fix: improve logging messages for zip security errors ( #750 )(PR #1698 )
...
Logging error messages on invalid file-names or path traversal attacks improved
2022-10-06 19:31:42 +01:00
Skylot
711419a797
fix: correct fix for all use places of incompatible primitives ( #1688 )
2022-10-03 00:11:04 +03:00
Skylot
603f3057eb
chore: update dependencies
2022-10-03 00:11:01 +03:00
5idereal
fa6fc1f871
fix(gui): update zh-TW translations (PR #1694 )
2022-10-02 15:50:11 +01:00
Skylot
49fa320989
fix: handle possible concurrent exception in method codegen ( #1685 )
2022-09-29 20:28:01 +01:00
Skylot
2f301bf150
fix: don't mark constructor for inline if anonymous class inline is disabled ( #1680 )
2022-09-25 17:47:53 +01:00
Skylot
b4892ce17f
build: use fixed java version to build win artifacts
2022-09-23 21:08:16 +01:00
Skylot
151c171616
fix: handle empty block at end of else-if chain ( #1674 )
2022-09-23 20:40:56 +01:00
Skylot
79477a2de3
fix: don't rename bridged overridden methods ( #1672 )
2022-09-23 19:16:34 +01:00
dependabot[bot]
78aadda931
build(deps): bump actions/checkout from 2 to 3 (PR #1669 )
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-12 18:30:35 +01:00
Jan S
b50706505f
fix(res): implemented parsing RES_TABLE_TYPE_LIBRARY chunks ( #1663 )(PR #1664 )
...
* core: Implemented parsing RES_TABLE_TYPE_LIBRARY chunks
* skip unknown data at the end of type chunk
2022-09-10 16:58:26 +01:00
The Cobra Chicken
9114821fb1
feat(debugger): add logcat output ( #1411 )(PR #1666 )
...
* Adding logcatController class and writing adb / debugger panel information to the controller.
* Finished parsing logcat binary output and writing an arraylist containing all events.
* added highlighting of logcat output based on type. Added timestamp parsing.
* Updated code to only get new log messages.
* Added additional code for select all
* Completed Check and uncheckall options.
* Changed log highlighting to log color. Changed from JTextArea to JTextPane. Logcat pane will now autoscroll only if it is already scrolled to the bottom. Debugger exit will now stop logcat as well.
* Moved labels into NLS rather than using hardcoded strings.
* Implemented the ability to autoselect attached process. Changed the formatting of logcat messages.
* Moved labels into NLS rather than using hardcoded strings.
* updating to use info getter methods rather than directly accessing variable
* Added Logcat Pause Button
* Added Clear button
* Updated clear icon
* Cleaning warnings
* cleaning
* Changed behavior to only show logcat for debugged process to start with.
* cleaning
* cleaning
* cleaning
* applying spotless
* Fixing bug with switch
* fixed formatting issue
* add missing localization strings
Co-authored-by: green9317 <38409554+green9317@users.noreply.github.com >
Co-authored-by: TheCobraChicken <jeffmlitfi@gmail.com >
Co-authored-by: Skylot <skylot@gmail.com >
2022-09-08 15:18:55 +01:00
Skylot
1195582da8
feat(gui): option for search results count per page ( #1652 )
2022-09-05 20:07:02 +01:00
Skylot
258987b0ff
chore: update dependencies
2022-09-05 20:07:01 +01:00
Guilherme
a6a734c70d
fix(gui): update pt-BR translation (PR #1655 )
2022-09-01 15:51:12 +01:00
Choiman1559
d6c23a2a9b
fix(gui): update Korean translation (PR #1650 )
...
* update korean
* Update Messages_ko_KR.properties
* Restore missing empty line
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2022-08-20 17:59:37 +01:00
Skylot
db028904d7
fix(gui): set legacy sort flag also for launch4j ( #1628 )
2022-08-20 17:37:26 +01:00
Skylot
63a571306c
refactor: load resource table nodes in one change ( #1648 )
2022-08-19 22:15:04 +01:00
Skylot
bc4db61e25
fix(gui): improve resources search ( #1648 )
2022-08-19 15:52:14 +01:00
Jan S
c7e6e28830
fix(gui): improve log viewer dialog ( #1311 )(PR #1649 )
...
* [gui]: improve log viewer dialog
* use method from UiUtils to set window icons
Co-authored-by: Skylot <skylot@gmail.com >
2022-08-18 19:55:41 +01:00
Skylot
1d7b6fdb2c
fix(gui): additional checks on open search result ( #1647 )
2022-08-18 15:59:45 +01:00
Skylot
ce5d8eeff8
fix: don't inline anonymous in self inner class ( #1645 )
2022-08-18 15:48:17 +01:00
Jan S
894e0e6132
fix: UnsupportedOperationException on adding a field ( #1645 )(PR #1646 )
...
* fix: UnsupportedOperationException on adding a field
* changed list check and creation similar to safeAdd
2022-08-18 15:33:18 +01:00
Skylot
127f0ecf3f
fix(gui): disable actions if files not loaded ( #1644 )
2022-08-16 21:28:57 +01:00
Skylot
cf7767e702
fix(gui): handle null value in TableCellRenderer ( #1642 )
2022-08-16 20:48:23 +01:00
Skylot
e0aedc7949
fix: improve top block search for try/catch ( #1633 )
2022-08-15 21:31:26 +01:00
Skylot
bad78de74c
perf: improve directory delete
2022-08-14 13:38:12 +01:00
Skylot
12df8a169f
chore: update gradle and dependencies
2022-08-13 18:25:08 +01:00
Skylot
15c9d33339
fix(gui): handle possible classes overlap in disk cache ( #1633 )
2022-08-13 13:13:13 +00:00
Jiaxin Peng
7e0fafbaf1
fix(gui): fix broken FileDialog by using legacy sort ( #1628 )(PR #1630 )
...
#1628 #1606 #1213 #1574 #1552
2022-08-11 13:59:46 +01:00
zhongqingsong
57b9c1dd7a
fix(gui): update Messages_zh_CN.properties (PR #1627 )
2022-08-11 13:29:15 +01:00
Skylot
8ba0c17259
fix: handle empty endless loop ( #1611 )
2022-08-10 22:07:52 +01:00
Areizen
cd32151083
fix(gui): correct Frida snippet for constructor (PR #1605 )
...
When hooking a constructor with Frida, call `$new` instead of `$init`. `$init` cannot be used to instantiate an object and is reserved for hooking.
Co-authored-by: Your Name <you@example.com >
2022-08-06 20:16:37 +01:00
Skylot
75b52d672e
feat(gui): save project search history
2022-08-05 20:43:05 +01:00
Skylot
11d04508f7
feat(gui): add manual search, stop and sort actions to search dialog ( #1600 )
2022-08-05 20:09:33 +01:00
Skylot
e641b773b5
fix(gui): improve search dialog performance
2022-08-05 14:53:48 +01:00
Skylot
6e5899c654
fix: checks for field init reorder ( #1599 )
2022-08-04 17:38:46 +01:00
Skylot
c66ffaa7f9
feat(gui): show start page on jadx open
2022-08-03 16:44:55 +01:00
Skylot
5193c6a5d8
chore: add tool for automatically insert new i18n lines
2022-08-03 16:44:40 +01:00
Skylot
e7212af547
chore: upgrade gradle wrapper to 7.5
2022-08-03 18:44:10 +03:00
FixTheBug
3ca1357af4
fix(gui): sort resources by deobfuscated name ( #1595 )(PR #1598 )
...
Co-authored-by: /paul-nguyen-goldenowl <paul.nguyen.goldenowl@gmail.com >
2022-08-01 14:54:22 +01:00
Guilherme
90e95213e4
feat(gui): add Brazilian Portuguese translation (PR #1596 )
...
* feat(translation): add pt-br
* fix: `adb_dialog` prefix deleted
2022-08-01 12:15:35 +01:00
Jan S
ae2d4da585
fix(res): XML "@null" decoding ( #1583 )(PR #1594 )
...
minor improvements
2022-07-31 13:50:32 +01:00
Skylot
691d5cd1e6
fix: hide unused label before exception handler in simple mode
2022-07-30 17:33:23 +01:00
Skylot
58a46c6417
fix(gui): add constructors usage into class usage ( #1591 )
2022-07-30 17:22:32 +01:00
Skylot
d3f6160e62
feat: add option to disable finally block extraction ( #1592 )
2022-07-30 14:07:43 +01:00
Skylot
03e4afb12f
fix: check variables before merge in finally block ( #1592 )
2022-07-30 13:48:53 +01:00
Hen_Ry
6802f6028e
fix(gui): update german translation (PR #1554 )
...
* german update
* Fix
* applied the latest changes as discussed
Co-authored-by: Jan Peter Stotz <jpstotz@users.noreply.github.com >
2022-07-27 17:45:36 +01:00
SiderealArt
5ca61cfe18
fix(gui): update zh-tw translation (PR #1589 )
2022-07-27 11:16:11 +01:00
Julian Burner
32d55b48f2
fix(gui): replace mixed-up quotation marks with period (PR #1588 )
2022-07-26 10:16:34 +01:00
Skylot
ab4b6f9e54
feat: select better resource name ( #1581 )
2022-07-25 19:53:03 +01:00
Jan S
9100ad1220
fix(debugger): resolve NPE in adb device viewer ( #1585 ) (PR #1586 )
2022-07-25 17:44:55 +01:00
Skylot
8b4f8fb572
fix: resolve inherited method to use correct alias ( #1582 )
2022-07-24 19:15:52 +03:00
Skylot
87e0e5bf16
fix: correct inline/merge with overriden bridge method ( #1580 )
2022-07-20 14:49:37 +01:00
Skylot
e4c2d6cf6e
fix(gui): use editor font for usage label
2022-07-20 14:36:51 +01:00
Skylot
fb0bdb5112
fix(gui): allow to use empty name to reset rename
2022-07-20 14:35:53 +01:00
Skylot
f4b3645435
fix: ignore anonymous classes in enclosing node search ( #1580 )
2022-07-19 19:25:17 +01:00
Skylot
c27f2badf7
fix(gui): resolve payload offset for switch insns in debug smali code ( #1575 )
2022-07-18 18:50:48 +01:00
Skylot
1a877d6535
fix: resolve possible decompilation double execution
2022-07-16 22:29:59 +03:00
Skylot
5ada9331b6
chore: update dependencies
2022-07-14 14:33:04 +01:00
Skylot
a0f4ccb7a4
fix: update deps and fix proto resource loading (AAB) ( #1129 )
2022-07-14 14:33:04 +01:00
Skylot
5b5524a7dd
fix: handle parent of inlined/moved classes ( #1578 )
2022-07-14 14:40:13 +03:00
Jan S
3cc464c9c9
fix: IndexOutOfBoundsException in JumpManager ( #1576 ) (PR #1577 )
2022-07-13 17:24:20 +01:00
Skylot
51555667cf
fix: add more checks before remove or rename enum methods ( #1572 )
2022-07-07 16:55:32 +01:00
Skylot
e01ea7010f
fix: save classes with code generation error into cache ( #1568 )
2022-07-03 19:32:41 +01:00
Skylot
77732c83c9
fix(gui): ignore/limit waiting of canceled search task ( #1568 )
2022-07-01 17:57:59 +01:00
Skylot
a67fc83949
fix: better dominators algorithms
2022-07-01 17:26:54 +01:00
Skylot
3d920725aa
fix: check synthetic methods before remove/inline ( #1560 )
2022-06-29 19:19:54 +01:00
Skylot
2f2fbea558
fix(gui): check user renames ( #1557 )
2022-06-29 16:21:49 +01:00
Skylot
e7a86a2960
fix(gui): forbid rename method args in fallback mode ( #1558 )
2022-06-29 15:25:23 +01:00
Skylot
b282d97ffe
fix(gui): set current dir directly in file chooser constructor ( #1553 )
2022-06-28 16:57:57 +01:00
Skylot
e4ca52a95f
chore: update dependencies
2022-06-28 16:23:31 +01:00
Skylot
d972d9ec74
fix(gui): ignore errors on code area dispose ( #1545 )
2022-06-28 16:20:31 +01:00
Jan S
0721a6b050
fix(gui): QuarkReport data validation added and other minor improvements (PR #1556 )
...
* QuarkReport: data validation added and other minor improvements
* checkStyle
2022-06-25 22:24:53 +03:00
zhongqingsong
762ee6550e
fix(gui):complete Chinese translation (PR #1549 )
...
1、Complete Chinese translation
2、Previous word polish
2022-06-25 22:15:22 +03:00
Skylot
18070eb7a6
fix(gui): allow to select file on mapping export
2022-06-20 14:19:59 +01:00
Skylot
8486891728
fix(gui): resolve various minor issues
2022-06-20 13:17:50 +01:00
Skylot
4679172d4f
fix(gui): correct set highlighted text in search ( #1507 )
2022-06-20 13:16:42 +01:00
Skylot
92a6c333d8
fix(gui): force jadx new version check by default
2022-06-20 12:55:15 +01:00
Skylot
358adbdd65
feat(gui): allow to disable jump on double click ( #1540 )
2022-06-19 17:19:08 +01:00
Skylot
65f7c80222
feat(gui): add reload and live reload actions ( #1537 )
2022-06-18 20:20:11 +01:00
Skylot
d2e6bb236e
fix: use wide move for long/double store/load java opcodes
2022-06-16 16:26:14 +01:00
Skylot
eaeb114258
fix: check class name collisions ( #1526 )
2022-06-15 18:43:33 +01:00
Skylot
1533b7fe6e
fix: keep types on duplicate cast remove ( #1527 )
2022-06-12 21:55:12 +01:00
Julian Burner
a2cd8e1ead
feat(gui): support export to deobfuscation mapping file formats ( #1491 )(PR #1505 )
...
* Add option to export mappings as Tiny v2 file
* Comply with JADX's import order conventions
* Only use Java 8 features
* Only use Java 8 features (2)
* Export comments to mappings file
* Method args test (doesn't work)
* Make method arg mapping exports work now
* Use `getTopParentClass()` instead of `getParentClass()`
See https://github.com/skylot/jadx/pull/1505#issuecomment-1145064865
* Remove unneeded method load call
* Small code cleanup; initial (broken) support for method vars
* Fixes regarding inner classes
* Add option to export mappings as Enigma directory
* Add option to export mappings as Enigma file/directory
Temporarily move to my mapping-io fork until this PR gets merged: https://github.com/FabricMC/mapping-io/pull/19
* Fix method vars' lv-indices
* Use correct offset value for method var mappings
* Also supply lvt-index for method var mappings
* Clarify why we're using local mapping-io fork; comment out Fabric Maven for now
* Remove unnecessary `public` modifier
* Make an `if` condition less complicated
* Move mapping export code into jadx-gui (for now)
* Make mapping export async; make export menu only clickable when everything is loaded
* Fix export mappings menu field declaration position
2022-06-11 20:19:08 +01:00
Christian Jones
4edb512121
fix(cli): allow decoding resource-only APKs ( #1517 )(PR #1530 )
...
* Process resource-only inputs
* Fix error, add testing
2022-06-11 15:40:39 +01:00
Skylot
702b88228c
fix(gui): resolve popup menu action run ( #1514 , #1529 )
2022-06-11 15:08:28 +01:00
Skylot
14fd88b2f8
fix(gui): add volatile and update sync for decompiler field in wrapper ( #1518 )
2022-06-08 21:06:57 +01:00
Skylot
20657e8bb5
doc(cli): improve plugins section formatting
2022-06-06 19:55:58 +01:00
Skylot
93d3194e3b
doc: remove incorrect tokei badge
2022-06-06 19:54:15 +01:00
Skylot
39331d9120
fix: remove deprecated --deobf-rewrite-cfg ( #1513 )
2022-06-06 19:53:47 +01:00
Skylot
b4fa6644bc
doc: add more badges
2022-06-05 16:06:19 +01:00
Skylot
0b2e2ed034
fix: improve class search for super call ( #1512 )
2022-06-05 14:49:34 +01:00
Skylot
81231206f3
fix(gui): reset disk cache on new jadx version
2022-06-04 23:26:25 +01:00
Skylot
49d0e76272
fix: support all-catch in multi-catch ( #1510 )
2022-06-04 23:25:52 +01:00
CmP-lt
0809993b37
fix(gui): improve restoration of windows saved state (PR #1511 )
...
* Fix restoration of windows saved state
* Don't skip restoration of window saved bounds when they intersect with screen bounds.
* Restore saved bounds of main window regardless of it's saved extended state (fixes divider location of main split pane being restored incorrectly when saved state of main window is maximized).
* Add handling for out-of-screen(s) window bounds
2022-06-04 17:41:00 +01:00
Skylot
0c3afcc24c
fix(gui): try to prevent jadx node leaks in UI objects
2022-06-03 16:15:14 +01:00
Skylot
d6c851eed4
test: fix method code extract
2022-06-02 19:33:16 +01:00
Skylot
dcf4a7c4e3
fix(gui): try to resolve some causes of memory leak
2022-06-01 19:48:51 +01:00
Skylot
9ba07b986b
fix(gui): reduce usage of nullable decompiler field in jadx wrapper ( #1506 )
2022-06-01 16:36:30 +01:00
Skylot
e6b6b93cbb
fix: improve blocks tree compare for finally extract ( #1501 )
2022-05-31 20:57:34 +01:00
Skylot
fcd58ae76f
fix: remap class names for store in disk cache ( #1503 )
2022-05-30 18:16:05 +01:00
Skylot
df380dea27
chore: update dependencies
2022-05-30 20:06:23 +03:00
CKCat
9d88592391
fix(res): ignore version in AndroidManifest.xml ( #1502 )(PR #1504 )
2022-05-30 14:10:10 +01:00
dependabot[bot]
c906c11b0f
build(deps): bump github/codeql-action from 1 to 2 (PR #1500 )
...
Bumps [github/codeql-action](https://github.com/github/codeql-action ) from 1 to 2.
- [Release notes](https://github.com/github/codeql-action/releases )
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/github/codeql-action/compare/v1...v2 )
---
updated-dependencies:
- dependency-name: github/codeql-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-28 18:04:08 +01:00
Skylot
4fbc56cdb0
build: add unstable win-with-jre bundle
2022-05-28 17:46:48 +01:00
Skylot
98c0416b20
fix(gui): correct close and reopen for decompiler and cache
2022-05-28 16:41:37 +03:00
ZachQin
fa41874e30
feat(gui): add parameters logging in Frida code snippet ( #1497 )(PR #1498 )
2022-05-28 14:39:02 +01:00
Skylot
2aa6c99c90
fix: skip dex files with parsing errors ( #1495 )
2022-05-28 13:27:29 +01:00
Skylot
5f60c0f1bb
build: fix google-java-format for all java versions
2022-05-27 22:51:52 +01:00
Skylot
cb741db623
fix: improve usage search, refactor java nodes creation ( #1489 )
2022-05-27 17:56:08 +01:00
Skylot
1df217c4a0
fix: save cache dir for reuse on project save/reopen
2022-05-27 16:50:13 +01:00
Skylot
81f209ba9e
fix: check if directory exists before delete ( #1493 )
2022-05-26 19:23:59 +03:00
zhongqingsong
34a31aa7df
fix(gui): complete Chinese Translation (PR #1492 )
...
1. Complete translation of Chinese
2. Polish up part of the translation
3. Restore all text for subsequent translation
2022-05-24 19:09:11 +01:00
Skylot
5099e02c9b
fix(gui): correct merge for plugin options from command line ( #1490 )
2022-05-23 19:44:49 +01:00
Skylot
f364b39b29
fix(gui): save full type info in metadata ( #1487 )
2022-05-22 16:18:38 +01:00
Skylot
4cd4746f9a
fix(gui): save variable name to show in tooltip ( #1487 )
2022-05-22 15:34:09 +01:00
Skylot
6448f0e32b
fix: use variable length encoding instead short for offsets (can overflow) ( #1489 )
2022-05-22 14:23:15 +01:00
Skylot
e07332d49a
fix(gui): resolve cast exception for variable reference ( #1489 )
2022-05-21 21:33:58 +01:00
Skylot
bd8a44c4c9
fix(gui): correct handle of selected file in save dialog
2022-05-21 21:31:47 +01:00
Skylot
21e94d8d5c
fix(gui): use alias for types in tooltips ( #1487 )
2022-05-20 22:09:39 +01:00
Skylot
7b1c7b967a
fix: use alias for variable names ( #1487 )
2022-05-20 22:09:39 +01:00
Skylot
e4b19ab560
fix(gui): add missing Use debug info option
2022-05-20 22:09:39 +01:00
Skylot
49137c9751
fix(cli): don't ignore critical errors ( #1150 )
...
Thrown java.lang.Error was ignored and not logged.
2022-05-19 23:12:19 +01:00
skylot
0606c90f22
feat(gui): disk code cache and search rewrite (PR #1483 )
...
* feat: implement disk code cache
* feat: rewrite code metadata handling, remove code index
* feat: rewrite search
* fix: code cleanup and fixes for previous commits
* feat: run code search in parallel
* fix: reset code strings cache on low memory, code cleanup
* fix: include input files timestamp into code hash
2022-05-18 15:19:31 +01:00
Jan S
65ade379a6
fix(gui): escape class- method and field names in frida code snippet (PR #1480 )
2022-05-10 19:43:15 +01:00
Skylot
a06df187c9
fix(gui): ask for project file path on exit ( #1474 )
2022-05-08 14:55:25 +03:00
Jan S
e784c7f7df
fix(gui): editor theme loading and error/fallback handling improved ( #1476 )(PR #1478 )
...
* fix(gui): editor theme loading and error/fallback handling improved
* Update jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2022-05-08 12:53:48 +01:00
Skylot
a717392379
fix: workaround to prevent incorrect order after move inline ( #1472 )
2022-04-29 15:37:07 +01:00
Skylot
a71b3a71d8
fix: better code styling for if-else blocks ( #1455 )
2022-04-26 20:18:06 +01:00
Skylot
3366bf3dec
chore: update dependencies
2022-04-26 20:48:18 +03:00
Jan S
a505534197
fix(gui): fix IndexOutOfBoundsException when switching between tabs via mouse wheel ( #1456 )(PR #1469 )
2022-04-26 17:27:39 +01:00
Nelson Gregório
357706b070
feat: allow to include/exclude dependencies when saving with class filter ( #1466 )(PR #1467 )
...
* feat: Add option to include/exclude dependencies when saving
* fix save skip for class depencencies
Co-authored-by: Skylot <skylot@gmail.com >
2022-04-26 17:18:51 +01:00
Skylot
e02434d135
fix(gui): confirm directory loading on file open ( #1462 )
2022-04-25 14:32:00 +03:00
Jan S
4586015fc0
fix(gui): resolve NPE on project save ( #1463 )(PR #1464 )
...
* fix(gui): NullPointerException on project save
* chore(gui): ensure MainWindow.project is never null
* ensure `files` in `ProjectData` in not null
Co-authored-by: Skylot <skylot@gmail.com >
2022-04-24 10:32:25 +01:00
Skylot
1832f2aee3
feat: allow to load custom input ( #1457 )
2022-04-21 13:21:13 +01:00
SiderealArt
1ec127c3cb
fix(gui): update Traditional Chinese translation (PR #1452 )
2022-04-19 14:05:55 +01:00
Skylot
7a3b7c55c9
build: run tests in parallel
2022-04-18 16:31:25 +01:00
Skylot
b66293a2f7
fix: handle wildcard in invoke type resolver ( #1238 )
2022-04-18 16:27:35 +01:00
Skylot
abcaafa89a
chore: update gradle and dependencies
2022-04-17 19:28:18 +01:00
Skylot
cf25cc4faa
fix: prevent null type in code variables
2022-04-17 19:18:33 +01:00
Skylot
b57001d4a7
fix: use correct reference for replaced bridge constructor ( #1441 )
2022-04-10 15:48:36 +01:00
Skylot
83decc2473
fix(gui): rename class while rename constructor ( #1441 )
2022-04-08 13:45:27 +01:00
root-intruder
92faa569be
build: allow unsigned local lib builds ( #1438 )(PR #1439 )
2022-04-06 13:41:33 +01:00
Skylot
c5b731169d
build: disable jitpack
2022-04-06 13:34:08 +01:00
Skylot
f0a8ef81d3
fix: replace fixed memory limit with -XX:MaxRAMPercentage=70.0 ( #1437 )
2022-04-05 20:08:39 +01:00
Skylot
994973ac01
fix(gui): check free memory after GC attempt
2022-04-05 19:46:10 +01:00
Skylot
c9622c0771
chore: update class set to Android 32
2022-04-05 20:21:41 +03:00
Jan S
8551c6c903
fix(res): ignore resource chunk entries that are located after the resource chunk end ( #751 )(PR #1436 )
2022-04-04 18:05:07 +01:00
Bruno Oberle
9a9ac4308e
fix(cli): use correct converter for "--decompilation-mode" option ( #1434 )(PR #1435 )
2022-04-04 13:47:30 +01:00
Matt
e784cbdd09
fix(deobf): fix writing method mappings as fields entries ( #1432 )(PR #1433 )
2022-04-02 12:30:25 +01:00
Elias
2744c4bfb6
build: fix appdata.xml ( #1427 )(PR #1430 )
2022-03-31 17:30:06 +01:00
Skylot
e4f4c1b84a
fix(gui): don't highlight whitespaces and special symbols ( #1429 )
2022-03-28 19:21:05 +01:00
Elias
e5fa818b5c
build: remove unsupported tags from appdata.xml ( #1427 )(PR #1428 )
...
* remove <code> tags from appdata.xml because flatpak doesn't like it
* appdata.xml: remove <a> tag because flatpak doesn't like it
2022-03-27 17:28:01 +01:00
Elias
b22b554a69
build: add appdata.xml for flatpak package (PR #1426 )
2022-03-27 14:06:18 +01:00
Skylot
e9b8060889
refactor(gui): improve node action in code area
2022-03-26 15:31:29 +00:00
Skylot
1c2b2c072c
fix(gui): restore open tabs on project load (regression fix)
2022-03-25 13:40:00 +00:00
Skylot
3d451912ee
fix: handle inlined classes while collecting override related methods ( #1422 )
2022-03-25 12:56:18 +00:00
Skylot
fe91d774fa
feat(gui): add split view for different decompilation modes
2022-03-23 18:16:57 +03:00
Skylot
d8306cb1c0
feat: add 'simple' decompilation mode
2022-03-23 18:16:54 +03:00
Jan S
909cf0a576
fix: various minor improvements (PR #1418 )
...
* chore: better variable naming for getInstance calls
* chore: rebalance preferences window and fix empty plugins section directly after jadx-gui start
* chore: do not ask for project save if nothing had been changed
* use parallel mode for gradle
* minor improvements for app debugging
* apply CodeQL suggestion to prevent log injection
* handle IntelliJ Idea warnings
* replace not-ASCII chars in LogUtils.escape
Co-authored-by: Skylot <skylot@gmail.com >
2022-03-23 15:13:53 +00:00
Jan S
8fe1ee11e4
fix(debugger): resolve IO read problems, proper socket closing (PR #1414 )
...
* fix(debugger): several IO read problems fixed
* merged latest changes
* fixed read loop
* Update jadx-gui/src/main/java/jadx/gui/device/protocol/ADB.java
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
2022-03-20 17:01:01 +00:00
Skylot
d2bef108f5
chore: update dependencies
2022-03-19 18:52:44 +00:00
Skylot
ba8ba504b1
fix(debugger): small improve for jdwp handshake ( #1412 )
2022-03-19 18:43:34 +00:00
Skylot
481b5abf85
fix(debugger): handle stream end and partial reads ( #1412 )
2022-03-18 14:19:08 +00:00
Skylot
c4e1d9445a
fix(gui): reduce threads count on low memory, other tweaks ( #1410 )
2022-03-17 17:50:28 +00:00
Skylot
cb03532b76
fix: allow implicit type cast for array operations ( #1407 )
2022-03-14 18:47:55 +00:00
Skylot
c93e9eea14
fix: improve class names collision detection ( #1406 )
2022-03-13 12:08:03 +00:00
Skylot
9a67b19973
feat(gui): add zoom in/out actions ( #1403 )
2022-03-11 13:59:00 +00:00
Skylot
95c75bed1e
chore: update gradle and dependencies
2022-03-11 11:34:51 +00:00
Skylot
b008568a5c
doc: add missing options to readme
2022-03-05 17:15:08 +00:00
Skylot
94fb91cec6
feat: add options for java-convert plugin
2022-03-02 15:40:32 +00:00
Skylot
c54dd77f35
fix(gui): resolve NPE and fix code style in BreakpointManager
2022-03-02 12:10:14 +00:00
Jan S
17fbc99f29
feat(gui): dialog for showing exception details and creating an GitHub issue (PR #1399 )
...
* chore(gui): Dialog for showing exception details and creating an GitHub issue
* directly throw test exception
* checkstyle
* minor
* log exception before the dialog is shown
2022-03-01 15:00:22 +00:00
Skylot
21dd17290b
fix(gui): download only latest version info for jadx update ( #1397 )
2022-02-28 18:51:13 +00:00
Skylot
dc73fc92be
fix(gui): don't use hardcoded color for link component ( #1398 )
2022-02-28 18:39:51 +00:00
Skylot
592215db66
fix(gui): handle package version in update check ( #1397 )
2022-02-28 18:39:51 +00:00
Skylot
fb318e3bd9
fix(gui): revert contextual keywords to identifiers ( #1394 )
2022-02-27 15:22:41 +00:00
Skylot
5f3c8816a3
fix: allow zero skips for restore new filled array
2022-02-26 17:29:00 +00:00
Skylot
6016b902c7
test: fix usage of Eclipse compiler
2022-02-26 17:29:00 +00:00
Skylot
5852da1e3d
feat: support MethodParameters attribute ( #1260 )
2022-02-26 10:28:21 +00:00
Skylot
502fd069be
test: for source auto check use compiled classes instead runtime
2022-02-26 10:28:20 +00:00
Jan S
fad9e7b827
fix(gui): initialize project name with loaded files (shown in Jadx title) ( #1386 )(PR #1393 )
2022-02-26 09:20:58 +00:00
Skylot
35116d0b1a
fix: load files also by extension ( #1391 )
2022-02-25 11:38:44 +00:00
Skylot
3b781e41ad
test: allow to pass additional compiler options
2022-02-24 20:52:34 +00:00
Skylot
a3e9744364
chore(cli): additional debug messages for java-convert plugin
2022-02-24 20:51:31 +00:00
Skylot
7030daeccd
fix(cli): resolve regression in applying '-v' and '-q' options
2022-02-24 19:52:58 +00:00
Jan S
e7151ad7b2
fix(gui): IllegalArgumentException when saving project to a different directory than the APK file ( #1387 )(PR #1388 )
2022-02-23 09:27:04 +00:00
Skylot
ed2a3c8458
fix: prevent NPE on 'ignore' deobf map file mode
2022-02-22 18:06:01 +00:00
Skylot
779f75cd52
fix(gui): prevent NPE on open preferences without loaded files ( #1385 )
2022-02-22 18:05:51 +00:00
Skylot
54683e3198
feat: plugin options, add verify checksum option for dex input ( #1385 )
2022-02-21 19:44:00 +00:00
Skylot
09335395f5
doc: update option description
2022-02-20 16:51:36 +00:00
Skylot
57e3dd8f15
feat(cli): improve single file mode ( #1344 )( #1384 )
2022-02-20 15:04:59 +00:00
Skylot
a9bbadd602
feat: add option for deobfuscation map file handle mode ( #1351 )
2022-02-19 21:20:11 +03:00
skylot
2c570681f7
doc: add link to jadx-gui key bindings in readme
2022-02-18 20:26:39 +00:00
Skylot
25166970cc
feat(gui): ctrl+c copy node string in search window ( #293 )
2022-02-18 19:10:56 +00:00
Skylot
d3a0a56b8b
feat(gui): ctrl+c copy highlighted word in code view ( #1292 )
2022-02-18 19:10:34 +00:00
YenKoc
3c2c198a0e
feat(gui): add Xposed snippet copy action (PR #1383 )
...
* add xposedscript
* fix code style and minor issues
* some code style changes for Xposed snippets
* some code style changes for Frida snippets + a fix for multidimensional arrays in overload params
* hide frida and xposed when right-clicking on a null node
* small style fix
* fixed formatting violations
* fix minor issues
Co-authored-by: Skylot <skylot@gmail.com >
Co-authored-by: Orip <oriori1703@gmail.com >
2022-02-18 12:54:41 +00:00
Skylot
4d4d67f0b4
fix: remove shadowed catch handlers ( #1377 )
2022-02-16 19:31:19 +00:00
Skylot
97e8a34906
fix: prevent some NPE in try/catch/finally processing ( #1379 )
2022-02-15 12:29:30 +00:00
Skylot
82f3b57e83
perf: improve ternary mod on big methods ( #1379 )
2022-02-15 12:03:06 +00:00
Skylot
af2f14f807
fix: prevent endless loop in anonymous class analysis ( #1382 )
2022-02-14 23:23:02 +00:00
Skylot
fe248d7098
fix: check values in inner class annotation ( #1382 )
2022-02-14 18:25:54 +00:00
Skylot
1a2e702b25
fix: inline nested anonymous classes ( #1379 )
2022-02-14 17:30:22 +00:00
Skylot
1da20b8e7d
doc: update readme
2022-02-14 16:41:31 +00:00
Skylot
01f74ff706
chore: update gradle and dependencies
2022-02-13 19:08:49 +00:00
Skylot
89e95eb9ee
fix: correct code reload after rename ( #1378 )
2022-02-12 19:15:18 +00:00
Skylot
a61ebaaa00
fix: sum only sub dependencies in batches build ( #1376 )
2022-02-11 19:53:12 +00:00
xxjy
7a5a2fcd84
fix: nested try catches with overlap try blocks ( #1374 )(PR #1375 )
...
* fix: nested try catch decompilation failed (#1374 )
* add tests and sort handlers
Co-authored-by: Skylot <skylot@gmail.com >
2022-02-09 20:55:15 +00:00
Jan S
8d5554f1b5
fix(gui): frida context menu entry does nothing ( #1365 )(PR #1372 )
2022-02-08 12:47:49 +00:00
Ori Perry
873aabb471
fix: use raw class names in Frida action ( #1365 )(PR #1366 )
...
* Use raw_name instead of full_name for the names of class in generated frida snippet.
Also cleaned the code a bit
* Fixed getting method parameters from inlined methods
* fixed generating code for constructor overloads, more cleaning
* Fixed getting method parameters from inlined methods for real this time
* made the option for a frida snippet only appear if clicked on a relevant node
* added support for generating a frida snippet for fields
* apply spotless
* Update jadx-gui/src/main/java/jadx/gui/ui/codearea/FridaAction.java
Co-authored-by: skylot <118523+skylot@users.noreply.github.com >
* moved the overload check from NodeMethod to FridaAction
* added semicolons in the end of lines of the generated frida snippet
* fix code formatting
2022-02-07 21:50:01 +00:00
cyqw
4bed9dc358
fix(gui): results in usage search should be sorted by name (PR #1363 )
2022-02-07 15:39:57 +00:00
nitram84
e229874195
fix: check if targetSdkVersion is missing in gradle export ( #1367 )(PR #1370 )
2022-02-07 10:39:09 +00:00
Skylot
473b6e31e9
fix: support multi-entry loops (simple case) ( #1320 )
2022-02-06 18:36:33 +00:00
Jan S
b5ce460618
feat(deobf): do not deobfuscate known top level domains with 2 or 3 characters (PR #1369 )
2022-02-06 12:56:59 +00:00
Skylot
3c05b05196
fix: check names from Kotlin metadata before use ( #1364 )
2022-02-05 21:49:36 +00:00
Skylot
bdb2efdb6b
fix(res): remove static caching map for xml renames ( #1364 )
2022-02-05 20:23:44 +00:00
Skylot
a27ba3ff4b
fix(res): skip '.9.png' decode if patch data not found ( #1112 )
2022-02-05 17:45:08 +00:00
Skylot
4684207b54
fix: remove duplicate classes from decompilation batches ( #1361 )
2022-02-05 17:45:07 +00:00
Skylot
dd1be3039b
fix(gui): split decompile and index tasks for correct time counting ( #1361 )
2022-02-05 17:45:07 +00:00
Skylot
8b30b770cd
fix(gui): missing icons and html decorations in usage dialog
2022-02-05 13:36:26 +00:00
Yotam
47caa91e85
fix(cli): fix and add debug log messages in initialization phase (PR #1362 )
...
* Fix log level settings in the CLI
* Add log messages in initialization phase
2022-02-02 19:04:19 +00:00
Skylot
d71f3e09df
fix: prevent endless loop in path cross search ( #1360 )
2022-02-01 14:32:44 +00:00
Jan S
06c7415827
fix(res): improved decoding of flag attributes in binary XML files ( #1156 )(PR #1359 )
2022-01-31 18:00:50 +00:00
Skylot
bd3e62617e
fix: correct inline for enums in j$.time.temporal
2022-01-31 11:49:59 +00:00
Skylot
00b48473a0
test: add internal option to disable file save
2022-01-31 10:27:20 +00:00
Skylot
84facb13d0
fix: don't inline named variables ( #1338 )
2022-01-28 18:33:38 +00:00
Skylot
96f90e18e8
fix: improve exception handlers attach
2022-01-26 15:43:40 +00:00
Skylot
8ff18e63ee
chore: update dependencies
2022-01-25 18:51:43 +00:00
Skylot
381405ea99
fix: always use deep resolve for fields and methods ( #1357 )
2022-01-25 11:37:36 +00:00
Ahmet Bilal Can
ae5c00397a
feat(gui): add frida action to copy methods/classes as frida snippets ( #1355 )(PR #1356 )
...
* add frida action to copy methods/classes as frida snippets
* bug: call toString before comparing
2022-01-24 21:37:12 +00:00
Skylot
bd4509f1a7
fix: update field usage on const replace ( #1348 )
2022-01-24 18:22:43 +00:00
Skylot
b8c84886a8
fix: correct use of class names for inner types ( #1340 )
2022-01-24 14:11:40 +00:00
Skylot
45021389bc
fix: correct method arg name if unused
2022-01-24 13:38:49 +00:00
Yotam
f674a29a64
fix(deobf): rename classes as anonymous only if they are a number (PR #1354 )
2022-01-23 21:16:05 +00:00
Yotam
0c9e3227d0
fix(deobf): collect missing renames for .jobf file ( #1350 )(PR #1353 )
2022-01-23 16:08:54 +00:00
cyqw
be7e1479a1
fix(gui): find usage for overridden methods ( #1349 )(PR #1352 )
2022-01-23 16:06:13 +00:00
Skylot
19827fca20
fix: support full class name in inner generic types ( #1340 )
2022-01-22 18:49:31 +00:00
Skylot
5eb7cc40ed
feat: check dex checksum before parsing ( #1343 )
2022-01-20 19:24:49 +00:00
Skylot
d22db30166
fix: use secure xml parser for process manifest
2022-01-20 11:17:12 +00:00
Skylot
6db61e7a59
chore: update dependencies
2022-01-20 10:23:49 +00:00
Skylot
86582de521
feat: use kotlin intrinsic methods for variables rename ( #1207 )
2022-01-19 17:30:04 +00:00
Skylot
a7c63c2eb3
fix: handle method override with several bases ( #1234 )
2022-01-18 18:27:09 +00:00
Skylot
081a0e21ee
fix: precalculate class deps for inline methods ( #1339 )
2022-01-17 14:38:38 +00:00
Skylot
9ac9c05265
fix: simplify cascading casts ( #1336 )
2022-01-15 16:31:18 +00:00
Skylot
b7daf79b26
fix: add explicit type for non-int constants ( #1336 )
2022-01-15 14:11:44 +00:00
Skylot
b67a3561a4
build: add CodeQL analysis
2022-01-13 22:37:36 +03:00
Skylot
52ac6dbbaf
docs: add security.md
2022-01-13 16:45:32 +00:00
Skylot
72381ad8f3
fix: correct literal negate for double and float ( #1334 )
2022-01-13 14:00:53 +00:00
Skylot
6a065c46f4
chore: update dependencies
2022-01-13 12:12:15 +00:00
Skylot
092d0d7e67
fix(gui): reduce tree focus switching
2022-01-12 19:57:38 +03:00
Skylot
5ca7285558
fix(gui): correct handling for tree row click ( #1324 )
2022-01-12 16:57:25 +00:00
Skylot
7576f9cd5e
fix: wrap negative literals before cast ( #1327 )
2022-01-12 17:31:40 +03:00
Skylot
46b5725d98
refactor(test): replace inputs with test profiles
2022-01-12 17:31:37 +03:00
Jan S
72542fa6f9
fix(gui): processing threads spinner initialization ( #1331 )(PR #1332 )
...
* fix: processing threads spinner initialization (#1331 )
* fix: processing threads spinner initialization (#1331 )
2022-01-12 14:23:07 +00:00
demonlol
a250d0461b
fix(dbg): support multiple main <action> and <activity-alias> tags ( #1322 )(PR #1323 )
...
* fix(dgb): support multiple main <action> and <activity-alias> tags in manifest
* Update jadx-gui/src/main/java/jadx/gui/device/debugger/DbgUtils.java
2022-01-02 20:09:24 +03:00
Skylot
c7795bfc48
fix: improve anonymous class inline ( #523 )
2021-12-26 13:06:49 +00:00
Skylot
5de46b7e40
chore: update gradle and dependencies
2021-12-24 12:53:30 +00:00
Skylot
99c70872c1
fix: use debug line numbers only at fixed offsets ( #1315 )
2021-12-22 22:55:14 +03:00
Skylot
3566669303
chore: update lgtm config
2021-12-22 12:24:01 +00:00
Skylot
4557d05256
fix: use correct type for anonymous class instance ( #597 )
2021-12-21 17:47:52 +00:00
Skylot
fa421d165e
build: disable missing warnings from javadoc
2021-12-21 12:52:52 +00:00
Skylot
ecf20020d7
chore: cache current working dir in static field, other minor changes
2021-12-20 19:25:07 +00:00
Skylot
ae85af61c7
fix: skip input file name checks by zip name validator ( #1310 )
2021-12-20 18:55:28 +00:00
Skylot
659bbbf4fb
fix: correct usage of Path.getParent()
2021-12-20 16:48:50 +00:00
Jan S
427e2dddc4
fix: use relative file paths in .jadx project file ( #1312 ) (PR #1313 )
...
* chore: use relative file paths in .jadx project file (#1312 )
* code beautified
* requested changes
2021-12-20 13:52:51 +00:00
skylot
d47483f957
docs: use jadx as a library
2021-12-19 20:36:58 +00:00
Skylot
4bd8e26ae7
build: add maven publish
2021-12-19 16:24:09 +00:00
Skylot
01f47282ed
fix: forbid 'printStackTrace()' usage
2021-12-18 19:24:36 +00:00
Skylot
afdd37cd97
fix: add comments with option references to improve usability
2021-12-15 12:24:37 +00:00
Skylot
addaffcd1d
chore: update dependencies
2021-12-15 11:56:01 +00:00
Skylot
63f7ce20a4
fix: add merged condition blocks for loop region ( #1307 )
2021-12-14 14:25:59 +00:00
Skylot
f37c23db7a
fix: use correct top block for try blocks with same start ( #1304 )
2021-12-13 18:14:27 +00:00
Skylot
d2bde0be21
fix: invoke in nested anonymous classes ( #1305 )
2021-12-13 00:12:30 +03:00
SiderealArt
9c446ebbd6
feat(gui): add Traditional Chinese translation (PR #1306 )
2021-12-12 16:05:10 +00:00
Skylot
0f00fb9a27
fix: handle move-result after invoke-custom with string concat
2021-12-11 16:22:27 +00:00
Skylot
2d6f819c86
chore: update gradle and dependencies
2021-12-11 16:22:27 +00:00
Skylot
56683ac409
fix: improve try/catch bounds detection ( #1303 )
2021-12-09 17:34:53 +00:00
skylot
a72523c7df
docs: add link to decompilation troubleshooting
2021-12-08 13:11:31 +00:00
Surendrajat
46eeb0bc22
fix(gui): forward navigation shortcut on macOS ( #1297 )(PR #1301 )
...
* fix: forward navigation shortcut on macOS
* apply suggestion
2021-12-06 16:45:29 +03:00
Skylot
6e8baef9b2
feat(gui): allow to minimize/maximize search windows ( #1298 )
2021-12-04 11:04:17 +00:00
Skylot
947b621733
feat: add option to use dx/d8 for convert java bytecode ( #1299 )
2021-12-03 15:05:28 +00:00
Skylot
4cc00bdaf2
fix: handle super case for invokespecial opcode ( #1300 )
2021-12-02 18:13:19 +00:00
Moredistant
59ef569a63
fix(gui): update chinese translation (PR #1296 )
2021-11-30 11:57:16 +03:00
Choiman1559
abae225915
Update Korean translation ( #1294 )
...
* Update Messages_ko_KR.properties
* Update Messages_ko_KR.properties
Add missing translations
2021-11-29 19:56:01 +03:00
Jan S
05bdf9daae
perf(res): XML decoding speed enhancement (PR #1293 )
...
* chore: XML decoding speed improved for large APKs (finding class references)
* skip attach class node to xml for SimpleCodeWriter (used in jadx-cli)
Co-authored-by: Skylot <skylot@gmail.com >
2021-11-29 15:08:54 +03:00
Haeter
0a8192168a
fix(gui): update Quark report parsing ( #1289 ) (PR #1291 )
2021-11-28 19:31:28 +03:00
Hen Ry
88fd5a517e
fix(gui): update German translation (PR #1290 )
...
* Updated German translation
2021-11-28 19:15:07 +03:00
zhongqingsong
74c5b616a4
fix(gui): update Chinese translation (PR #1287 )
...
1. According to the English version of the document, complete the left texts.
2. Fix some inaccurate word, such as field, old CN is variable(变量), inadequacy. signer, old CN is somebody(人), now it's something(者)。
3. Fix improper use of symbols, Lack of symbols in some place, some EN symbol translate to CN symbol.
4. Other change
2021-11-26 18:40:01 +03:00
Skylot
22a61d715b
build: sometimes build failing without running gradle daemon
2021-11-25 14:47:17 +03:00
Skylot
a90ec7c64a
fix: include inlined classes in usage search ( #1285 )
2021-11-25 14:47:13 +03:00
Jan Peter Stotz
b22812b43a
fix: APK signature description for unprotected entries only applies to v1 signatures
2021-11-24 16:46:38 +03:00
Jan Peter Stotz
4c0da8c3d5
fix: binary xml hexadecimal int value decoding
2021-11-24 16:46:38 +03:00
Moredistant
9aa30f77b7
fix(gui): update chinese translation (PR #1284 )
2021-11-23 15:54:53 +03:00
Martin Kay
2dbef83fa6
feat(gui): smali code highlighting (PR #1283 )
...
* smali code highlighting is basically perfect
* Optimize smali highlight color matching, and provide original jflex generation
* reformat code
* disable checkstyle
* update shell to be more environment independent
Co-authored-by: Skylot <skylot@gmail.com >
2021-11-23 15:53:37 +03:00
Skylot
6ec7f789ef
fix: restore usage data after class reload ( #1281 )
2021-11-22 13:56:15 +00:00
Skylot
31c0afe29e
fix: don't unload field init values ( #1277 )
2021-11-21 18:54:32 +00:00
Skylot
46b07863c1
build: fix bundle build
2021-11-20 20:49:57 +00:00