Commit Graph

139 Commits

Author SHA1 Message Date
Cody Lund 8d59882e5f
Fix: numeric string meta-data value corruption (#2612)
* Fix: handle numeric strings in manifest meta-data value
* fix regex
* scoped solution
* improve comment

Co-authored-by: Cody Lund <colund@microsoft.com>
2021-08-17 07:01:08 -04:00
IgorEisberg 88d3d0038c style: organize some using statements for consistency 2021-07-03 23:24:42 +03:00
Connor Tumbleson 8a23d0dbc1
refactor: correct spelling mistake of aapt 2021-03-28 10:54:31 -04:00
Connor Tumbleson f4c2f9bc50
fix: remove declared exceptions that aren't thrown 2021-03-12 07:47:19 -05:00
Connor Tumbleson 4d11c13e44
refactor: remove duplicated code 2021-03-12 07:37:47 -05:00
Connor Tumbleson 447ba50332
refactor: drop author tags and support javadocs 2021-03-07 15:06:45 -05:00
Connor Tumbleson d63088db9f feat: method to list frameworks 2020-11-30 07:11:08 -05:00
Connor Tumbleson 7cf9a95710 fix: add better error message when can't write framework file 2020-11-28 16:19:29 -05:00
Connor Tumbleson 3101a05ef6
fix: add development next version (S) - API 31 2020-09-13 08:52:15 -04:00
Connor Tumbleson 83a45921ea fix: put the resources.arsc file under STORED compression into framework 2020-04-12 07:27:28 -04:00
Connor Tumbleson 3f831c8221
refactor: copyright year should be year started, not current year 2020-04-11 06:33:05 -04:00
Frieder Bluemle 81ca785e02
Fix file header comment format 2020-02-29 17:37:46 -08:00
Connor Tumbleson b05f19b80d fix: patch aapt2 to not run custom commands on passed aapt2 binary 2019-11-20 06:46:06 -05:00
Peter Retzlaff d6f38e38cd Only attempt to use -e option when the packaged aapt binary is used. 2019-11-20 06:46:06 -05:00
Peter Retzlaff 5d488e5f22 Create file containing the do-not-compress extensions and pass it to aapt. 2019-11-20 06:46:06 -05:00
yangjing.yeoh 9e39755750 bugfix, fix get wrong package ResPackage for multi-pkg resources.arsc. 2019-09-23 18:39:18 +08:00
Connor Tumbleson 103aa978df
refactor: remove outdated ALLOWED_PACKAGES constant 2019-07-14 06:56:37 -04:00
Igor Eisberg 8084762274
Fix recompile of miui.apk by allowing package renaming
This old issue prevented the package to be renamed from com.miui.core to miui, making it impossible to recompile, as all attributes are refefred to as miui:*/*. This fixes it permanently.
2019-07-14 06:54:32 -04:00
Connor Tumbleson 25a1cb02ef
fix: License 2019 update 2019-07-13 12:19:41 -04:00
Connor Tumbleson 73ac0d96fb
Merge pull request #2066 from iBotPeaches/issue-2045
Support for SDK_Q shorthand
2019-04-24 19:56:15 -04:00
Connor Tumbleson f3f634f010 fix: add SDK_Q (test) value of 10,000 2019-04-24 18:46:48 -04:00
Connor Tumbleson 2e75f7b799 fix: create directory if doesn't exist, before error 2019-04-24 18:45:57 -04:00
Seb Patane b0fd764df4 feat: Expose the aapt --no-crunch option
- Add a --no-crunch/-nc flag to apktool which gets passed through to aapt
- This allows apktool to make a byte-for-byte copy of resource files
- refs: #1232
2018-07-24 13:54:37 +10:00
Connor Tumbleson 46ebcb0fab Revert "fix: don't use deprecated property "doNotCompress""
This reverts commit 258fb82fe2.
2018-04-06 14:57:24 -04:00
Connor Tumbleson db59f93e36 fix: ignore package "FFFFFFFFFFFFFFFFFFFFFF" to prevent wrong renaming
- refs: #1752 / #1471
2018-04-06 14:46:39 -04:00
Connor Tumbleson 2d190d019c fix: remove 6 year old experimental smali resource tagger
- refs: #244
 - Regular expressions are not the way to fix this. Too many situations
 in smali where patterns won't work. Correct fix would be to hook dexlib
2018-04-06 12:03:08 -04:00
Connor Tumbleson 258fb82fe2 fix: don't use deprecated property "doNotCompress" 2018-04-06 10:49:08 -04:00
Connor Tumbleson 7621fdb79c Assume Android P will be API 28
- refs: #1742
2018-03-12 15:34:32 -04:00
Connor Tumbleson 448d14592f aapt2: don't rebuild compile stage unless needed 2018-02-28 18:40:13 -05:00
Connor Tumbleson d2c808dd7d aapt2: refactor loading of aapt/aapt2 binaries
- change: die out if invalid aapt path is provided
2018-02-28 11:25:56 -05:00
Connor Tumbleson f05bd31e59 aapt2: sparse resource pulling from yaml 2018-02-28 11:05:07 -05:00
Connor Tumbleson 3c84590a1a aapt2: treat verbose output as fine 2018-02-28 10:58:38 -05:00
Connor Tumbleson 5d95b388aa aapt2: beginning use of aapt2 vs aapt1 params 2018-02-22 11:22:40 -05:00
Connor Tumbleson 9fc1ede991
License 2018 update 2018-02-16 08:26:53 -05:00
Connor Tumbleson c23c1303dd Merge branch 'master' into issue-1639 2017-10-24 15:39:28 -04:00
Connor Tumbleson 0271e55370
Fix regression when --frame-path points to non existing directory
- fixes #1639
2017-10-14 12:36:54 -04:00
Connor Tumbleson 41018a81b8
Remove .exit() falls from library code
- fixes #1640
2017-10-14 12:36:07 -04:00
Connor Tumbleson 3ec4f360ab
Add support for shorthand SDK for bounding check
- fixes #1630
2017-09-28 08:23:02 -04:00
Connor Tumbleson dc33533d76 add tests, make public method 2017-09-19 15:09:25 -04:00
Connor Tumbleson 21e9dd514c cs cleanup 2017-09-19 14:42:14 -04:00
Jan Vidar Krey 5f0d53ba20 Support bounding targetSdkVersion between minSdkVersion and maxSdkVersion
It is possible to create a an AndroidStudio project that uses the following
nonsense settings:

    defaultConfig {
        minSdkVersion 15
        maxSdkVersion 19
        targetSdkVersion 25
    }

The application is successfully built by Android Studio, and the APK
works when installed on the relevant devices, however the app cannot
be re-built with Apktool afterwards.

This patch works around the problem by explicitly setting the
targetSdkVersion to the max of the maxSdkVersion and min of the minSdkVersion
only if these are specified.
2017-09-15 16:24:39 +02:00
Connor Tumbleson e9618fae6b
Windows binary is still 32 bit 2017-08-27 09:54:36 -04:00
Connor Tumbleson fa966d2d66 Drop 32 bit binaries
- update unix/win/mac 64 bit binaries
 - fixes #1598
 - refs #1594
2017-08-24 15:53:52 -04:00
Connor Tumbleson 79454823b3 Refactor directory checks to prevent assumptions
- only checks directory path of apktool framework location
 - fixes #1586
2017-08-15 15:52:46 -04:00
Connor Tumbleson 1597c12472 changed all license files 2017-07-05 12:05:52 -04:00
Bing Qiao 28883538a7 Class.class.getResourceAsStream tries to load resource from root directory. This fails when apktool is built into a fat jar like Spring boot executable so that the classloader tries to load the resource from the root directory of the Spring boot jar instead of that of the bundled appktool jar. 2017-06-29 12:36:05 +01:00
Connor Tumbleson e4db1fa8d6 Prevent closing objects that may not exist. 2017-05-04 17:53:54 -04:00
Connor Tumbleson 488b9d58dd
code style changes 2017-05-02 08:16:07 -04:00
Marc Miltenberger 66c1b46865 Closing Framework and APK after use
This commit should fix https://github.com/iBotPeaches/Apktool/issues/1160
2017-05-02 08:21:09 +02:00
Connor Tumbleson 891d0d39e0 Refactor ExtFile to brut.j.dir
- move to using Paths when possible
 - adapt calls to FileDirectory to leverage Paths
2016-12-25 07:57:41 -05:00