### Get Commit Authors and Counts Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md This Git command retrieves a sorted list of commit authors and their commit counts since a specified date, excluding merge commits. Replace the date with the last release date. ```bash git shortlog -s -n --all --no-merges --since="05 Sept 2018" ``` -------------------------------- ### Building the binary Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Commands to clean and build the new binary version. ```bash ./gradlew build shadowJar proguard release ``` ```bash ➜ Apktool git:(main) ./gradlew build shadowJar proguard release Building RELEASE (main): 2.2.2 ``` -------------------------------- ### Include Modified Frameworks Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Steps to add the Apktool-specific remote and checkout the appropriate branch. ```bash cd frameworks/base git remote add origin git@github.com:iBotPeaches/platform_frameworks_base.git git fetch origin -v git checkout origin/apktool-{x} ``` -------------------------------- ### Build aapt2 for Linux and Windows Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Commands to build and strip aapt2 binaries for Linux and Windows environments. ```bash source build/envsetup.sh lunch aosp_cf_x86_64_only_phone-aosp_current-eng m aapt2 strip out/host/linux-x86/bin/aapt2 strip out/host/linux-x86/bin/aapt2_64 strip out/host/windows-x86/bin/aapt2.exe strip out/host/windows-x86/bin/aapt2_64.exe ``` -------------------------------- ### Generate MD5 and SHA256 Hashes Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Use these commands to generate MD5 and SHA256 checksums for uploaded JAR files on the backup server. Ensure the hashes match the expected values. ```bash md5sum *.jar > md5.md5sum ``` ```bash sha256 *.jar > sha256.shasum ``` -------------------------------- ### Build aapt2 for macOS Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Commands to build and strip aapt2 binaries for macOS environments. ```bash export ANDROID_JAVA_HOME=/Path/To/Jdk source build/envsetup.sh lunch aosp_cf_x86_64_only_phone-aosp_current-eng m aapt2 strip out/host/darwin-x86/bin/aapt2_64 ``` -------------------------------- ### Verifying binary hashes Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Commands to generate MD5 and SHA256 hashes for the built JAR file. ```bash ➜ Desktop md5sum apktool_2.2.2.jar 1e6be08d3f9bb4b442bb85cf4e21f1c1 apktool_2.2.2.jar ➜ Desktop sha256sum apktool-2.2.2.jar 1f1f186edcc09b8677bc1037f3f812dff89077187b24c8558ca2a89186ea3251 apktool-2.2.2.jar ``` -------------------------------- ### Gradle Build and Test Commands Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Common Gradle tasks for building, debugging, and running specific tests within the Apktool project. ```bash ./gradlew build shadowJar proguard -x test ``` ```bash ./gradlew test --debug-jvm ``` ```bash ./gradlew :brut.apktool:apktool-lib:test ---tests "*BuildAndDecodeTest" ``` ```bash ./gradlew :brut.apktool:apktool-lib:test --tests "*BuildAndDecodeTest" --debug-jvm ``` -------------------------------- ### Configuring Maven publishing Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Required structure for the gradle.properties file to enable Maven artifact publishing. ```properties signing.keyId={gpgKeyId} signing.password={gpgPassphrase} signing.secretKeyRingFile={gpgSecretKingRingLocation} ossrhUsername={sonatypeUsername} ossrhPassword={sonatypePassword} ``` -------------------------------- ### Tagging a release with Git Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Use these commands to tag the release commit with the appropriate version number. ```bash git tag -a vx.x.x -m "changed version to vx.x.x" -s ``` ```bash git tag -a v2.2.1 -m "changed version to v2.2.1" -s ``` -------------------------------- ### Optimize AOSP Source Clone Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Commands to perform a partial clone and sync only the current branch to save disk space. ```bash ~/bin/repo init -u https://android.googlesource.com/platform/manifest -b android16-release --partial-clone ``` ```bash repo sync -c ``` -------------------------------- ### Pushing release changes Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Commands to push the release commits and tags to remote repositories. ```bash git push origin main git push origin vx.x.x git push bitbucket master git push bitbucket vx.x.x ``` -------------------------------- ### Patch macOS Build Configuration Source: https://github.com/ibotpeaches/apktool/blob/main/INTERNAL.md Steps to update the darwin_host configuration for unsupported macOS versions. ```bash vim build/soong/cc/config/darwin_host.go Find darwinSupportedSdkVersions array. Add number that corresponds to output of: find /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs -iname "*.sdk" ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.