Apktool 3 Brainstorming (Remove aapt1) #2641
Replies: 4 comments 2 replies
-
Yeah, scrapping AAPT is the right move. AAPT2 has everything AAPT had, and much more than that. |
Beta Was this translation helpful? Give feedback.
-
As for me, it is worth abandoning AAPT\AAPT2 altogether. Applications have long gone beyond the scope of AOSP and after compilation of resources, different post-processing of resources occurs. With the arrival of split apk, normal recompilation of resources became impossible.
Also, there are already projects that can collect xml and arsc without aapt. And here is a project that tests resources. Contains good utility classes to convert values to binary format and parse resources to use pseudo compilation (testing resources) Well, and also, Android Studio itself also knows how to compile resources in the proto format. This project maybe suitable for understanding how to write a parser for decompiled resources then build xml and arsc, not proto. The time has come to change the concept of apktool, because the further, the more applications are moving away from the canons of AOSP and what can aapt. |
Beta Was this translation helpful? Give feedback.
-
@iBotPeaches you can use https://github.com/pashamcr/AAPTS, build for each platform takes 5 minutes, you can also create a fork, add a build for macOS, unify everything into one project, and only support the files needed to build aapt's:
|
Beta Was this translation helpful? Give feedback.
-
Okay, I've boiled this down to some items I'm focusing for 3.0
For the reasons
|
Beta Was this translation helpful? Give feedback.
-
I've been noticing that is getting incredibly difficult for myself to keep up with AOSP aapt/aapt2 on three different platforms. Its becoming a nightmare to just build it, because Android/AOSP/Google keep making a basic build-tools build incredibly difficult.
You'd think the
tools
group that repo offers would be what we want, but nah. You need to clone every since repo, but thankfully can take advantage of of shallow clones and only current branches.Manually patching aapt or aapt2 with little knowledge of c++ and the ever evolving AOSP build system is killing me, just to be frank and honest. I either rely on contributors and then have to find my way around understand patches or struggle for months for the simplest of patches.
So here I want to brainstorm about Apktool 3, where I'm thinking about completely removing aapt1 from the tool. This means everything would be funneled through AAPT2. This would allow 1 path to patch and remove restrictions that folks are commonly reporting bugs for.
Not to say this journey would be easy in any regard of patching AAPT2, since its still unfamiliar terrain, but I'll take 1 set of patches vs double.
This would allow me to focus the current areas of improvement in aapt2 that are apktool specific:
platformBuildVersionName
andplatformBuildVersionCode
unchangedcompileSdkVersion
andcompileSdkCodename
unchangedRelated bugs:
Opinions?
Beta Was this translation helpful? Give feedback.
All reactions