-
-
Save nobodyzxc/5824c8d138f04c1f5599346dde2681ae to your computer and use it in GitHub Desktop.
| APK="$1" | |
| if [ -f $APK ];then | |
| ./apktool d "$APK" | |
| OIFS="$IFS" | |
| IFS=$'\n' | |
| grep -lR "\->loadAd" "${APK%.*}" | xargs -d '\n' -- sed -i '/\->loadAd/d' | |
| IFS="$OIFS" | |
| ./apktool b "${APK%.*}" -o "${APK%.*}_no_ad.apk" | |
| java -jar sign.jar --overwrite --apks "${APK%.*}_no_ad.apk" | |
| rm -rf "${APK%.*}" | |
| else | |
| echo "please input apk file" | |
| fi |
| #!/bin/bash | |
| # | |
| # Copyright (C) 2007 The Android Open Source Project | |
| # | |
| # Licensed under the Apache License, Version 2.0 (the "License"); | |
| # you may not use this file except in compliance with the License. | |
| # You may obtain a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, software | |
| # distributed under the License is distributed on an "AS IS" BASIS, | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| # See the License for the specific language governing permissions and | |
| # limitations under the License. | |
| # This script is a wrapper for smali.jar, so you can simply call "smali", | |
| # instead of java -jar smali.jar. It is heavily based on the "dx" script | |
| # from the Android SDK | |
| # Set up prog to be the path of this script, including following symlinks, | |
| # and set up progdir to be the fully-qualified pathname of its directory. | |
| prog="$0" | |
| while [ -h "${prog}" ]; do | |
| newProg=`/bin/ls -ld "${prog}"` | |
| newProg=`expr "${newProg}" : ".* -> \(.*\)$"` | |
| if expr "x${newProg}" : 'x/' >/dev/null; then | |
| prog="${newProg}" | |
| else | |
| progdir=`dirname "${prog}"` | |
| prog="${progdir}/${newProg}" | |
| fi | |
| done | |
| oldwd=`pwd` | |
| progdir=`dirname "${prog}"` | |
| cd "${progdir}" | |
| progdir=`pwd` | |
| prog="${progdir}"/`basename "${prog}"` | |
| cd "${oldwd}" | |
| jarfile=apktool.jar | |
| libdir="$progdir" | |
| echo $libdir | |
| if [ ! -r "$libdir/$jarfile" ] | |
| then | |
| echo `basename "$prog"`": can't find $jarfile" | |
| exit 1 | |
| fi | |
| javaOpts="" | |
| # If you want DX to have more memory when executing, uncomment the following | |
| # line and adjust the value accordingly. Use "java -X" for a list of options | |
| # you can pass here. | |
| # | |
| javaOpts="-Xmx512M -Dfile.encoding=utf-8" | |
| # Alternatively, this will extract any parameter "-Jxxx" from the command line | |
| # and pass them to Java (instead of to dx). This makes it possible for you to | |
| # add a command-line parameter such as "-JXmx256M" in your ant scripts, for | |
| # example. | |
| while expr "x$1" : 'x-J' >/dev/null; do | |
| opt=`expr "$1" : '-J\(.*\)'` | |
| javaOpts="${javaOpts} -${opt}" | |
| shift | |
| done | |
| if [ "$OSTYPE" = "cygwin" ] ; then | |
| jarpath=`cygpath -w "$libdir/$jarfile"` | |
| else | |
| jarpath="$libdir/$jarfile" | |
| fi | |
| # add current location to path for aapt | |
| PATH=$PATH:`pwd`; | |
| export PATH; | |
| exec java $javaOpts -jar "$jarpath" "$@" |
not working for me, i need instructions
Input file () was not found or was not readable. grep: : No such file or directory sed: no input files /root/test/ I: Using Apktool 2.3.4 brut.directory.DirectoryException: java.io.FileNotFoundException: (No such file or directory) provided apk path or file '_no_ad.apk' does not exist Run with '--debug' parameter to get additional information.
im not sure if you input the filename correctly,
or the file is normal.
u may take the SO question a look:
https://stackoverflow.com/questions/41216047/apptool-decompile-with-and-apktool
grep -lR "->loadAd" "${APK%.*}" | xargs sed -i '/->loadAd/d'
this line dosnt work with files that have space in there name, i get error
[sed: can't read : No such file or directory]
can you check here and fix it please
https://superuser.com/questions/677078/sed-cant-read-no-such-file-or-directory
done, give it a try
Small note that this works better with the latest version of apktools.
Also, you could import the file or their project as a submodule.
Thanks for your help in DMs!
I know nothing about that,
but I have uploaded
apktool,apktool.jarandsign.jarhere,you can download all them all and give it a try.