-
Notifications
You must be signed in to change notification settings - Fork 29
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit a2b75ba
Showing
70 changed files
with
11,435 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
#built application files | ||
*.apk | ||
*.ap_ | ||
|
||
# files for the dex VM | ||
*.dex | ||
|
||
# Java class files | ||
*.class | ||
|
||
# generated files | ||
bin/ | ||
gen/ | ||
|
||
# Local configuration file (sdk path, etc) | ||
local.properties | ||
|
||
# Windows thumbnail db | ||
Thumbs.db | ||
|
||
# OSX files | ||
.DS_Store | ||
|
||
# Android Studio | ||
*.iml | ||
.idea | ||
.gradle | ||
build/ | ||
.navigation | ||
captures/ | ||
output.json | ||
|
||
#NDK | ||
obj/ | ||
.externalNativeBuild | ||
|
||
# ProGuard | ||
proguard/ |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
Copyright (C) 2011-2020 Jorrit "Chainfire" Jongma | ||
|
||
This program is free software: you can redistribute it and/or modify | ||
it under the terms of the GNU General Public License as published by | ||
the Free Software Foundation, either version 3 of the License, or | ||
(at your option) any later version. | ||
|
||
This program is distributed in the hope that it will be useful, | ||
but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
GNU General Public License for more details. | ||
|
||
You should have received a copy of the GNU General Public License | ||
along with this program. If not, see <https://www.gnu.org/licenses/>. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
This is the sauce for the [LiveBoot](https://play.google.com/store/apps/details?id=eu.chainfire.liveboot) app. | ||
|
||
## License | ||
|
||
Copyright © 2011-2020 Jorrit *Chainfire* Jongma | ||
|
||
This code is released under the GPLv3. [LICENSE](./LICENSE), [COPYING](./COPYING). | ||
|
||
## Spaghetti Sauce Project | ||
|
||
This library is part of the [Spaghetti Sauce Project](https://github.com/Chainfire/spaghetti_sauce_project). | ||
|
||
## About | ||
|
||
*LiveBoot* is an app for rooted devices that shows the logcat and | ||
dmesg output on-screen during boot. It has been around since | ||
2014, (then) supporting Android 4.x (or 2011 and Android 2.x if you | ||
include its predecessors). | ||
|
||
### Opening the source | ||
|
||
It does some neat tricks, others could learn from it. It's not really | ||
in active development anymore (and hasn't been for years), but now and | ||
then people nag me to fix it when it breaks, and sometimes I do. Now | ||
*you* can fix it too! A little joy as 2020 finally ends! | ||
|
||
### Open source but in-app puchases? | ||
|
||
Yes, please still buy it. Or press the *Freeload* button that has been | ||
in most of my apps for many years that gives you all the features for | ||
free. Or recompile it yourself so it does that. | ||
|
||
### Download | ||
|
||
You can grab actual releases from [Google Play](https://play.google.com/store/apps/details?id=eu.chainfire.liveboot) | ||
or in the [XDA thread](https://forum.xda-developers.com/t/LiveBoot.2976189/). | ||
|
||
### Feedback | ||
|
||
It puts it in the [XDA thread](https://forum.xda-developers.com/t/LiveBoot.2976189/). | ||
|
||
### Disclaimer | ||
|
||
This hasn't been in active development for a while, and contains code | ||
that has been copy/pasted and passed around throughout my projects | ||
for many years. It wouldn't surprise me if there's code in here | ||
somewhere that was already smelly back in 2011. This is not a | ||
shining example of how to build apps in 2020. | ||
|
||
I did not go through the code to clean it up before dumping it here. | ||
Comments could be outdated or just plain wrong. | ||
|
||
If it breaks, you get to keep all the pieces. | ||
|
||
### Dependencies | ||
|
||
Primarily depends on [libRootJava](https://github.com/Chainfire/librootjava) | ||
and [libCFSurface](https://github.com/Chainfire/libcfsurface). | ||
|
||
### Enjoy! | ||
Or not. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
// Top-level build file where you can add configuration options common to all sub-projects/modules. | ||
buildscript { | ||
repositories { | ||
google() | ||
jcenter() | ||
} | ||
dependencies { | ||
classpath 'com.android.tools.build:gradle:4.1.1' | ||
} | ||
} | ||
|
||
allprojects { | ||
repositories { | ||
google() | ||
jcenter() | ||
mavenLocal() | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
2014-12-18 - v1.05 | ||
- Fixed number of lines being interpreted as hexadecimal | ||
- Fixed various load and display issues on 4.3 and 4.4 | ||
|
||
2014-12-20 - v1.10 | ||
- Possible fix for only showing for two seconds during boot on some devices | ||
- Fixed some typos | ||
- Made logcat buffers configurable (pro) | ||
- Made logcat format configurable (pro) | ||
- Made word wrap configurable | ||
- Added option to darken the background | ||
- Added option to save logs | ||
- Added reboot option | ||
|
||
- Added capability to use init.d if not using SuperSU, but this is not officially supported. It might make the app work on more firmwares, but it should be noted that init.d behavior differs between firmwares, and unlike su.d provided by SuperSU, no guarantees are made as to the state of the /data partition or SELinux policies when init.d scripts execute. Therefor it is impossible to officially support - it might work, it might not, and this will differ between firmwares. | ||
|
||
2014-12-20 - v1.11 | ||
- Added option to disable logcat color coding | ||
- Another possible fix for premature exit | ||
|
||
2014-12-20 - v1.12 | ||
- ProGuard (reduce APK size) | ||
|
||
2014-12-21 - v1.13 | ||
- Use alternative shell if default not available (fx HTC One m7, m8) | ||
- Workaround b/7188322 hack (fx Shield Tablet) | ||
- Fixed minor script issues | ||
|
||
2015-01-03 - v1.14 | ||
- Force remove old boot scripts before placing new one | ||
- Added another watchdog to prevent the animation from never quitting | ||
- (C) 2015 | ||
|
||
- Note: some devices need SuperSU v2.42 or newer to work | ||
|
||
2015-10-30 - v1.20 | ||
- Android 6.0 support | ||
|
||
2016-05-19 - v1.30 | ||
- Android N Preview 3 support | ||
|
||
2016-10-30 - v1.40 | ||
- Android N 7.1 file-based-encryption support | ||
|
||
2016-12-20 - v1.50 | ||
- S7@Nougat: stop animation when Android is up | ||
- (C) 2017 | ||
|
||
2017-09-11 - v1.60 | ||
- Add compatibility with Android Oreo | ||
- Add compatibility with SuperSU in SBIN mode | ||
- Fix toolbox/toybox detection on 64-bit, could cause animation to keep running | ||
|
||
2018-11-16 - v1.70 | ||
- Android 9.0 Pie support | ||
- Improved 64-bit support | ||
- Fix files dir not existing automagically | ||
- Migrated libcfsurface from C hijacks to Java reflection as much as possible (4.2 --> 5.0 minimum support) | ||
- Magisk support | ||
- Adaptive icon | ||
- Updated compile and target API levels | ||
- (C) 2018 | ||
|
||
2019-01-06 - v1.80 | ||
- Magisk: support /data/adb paths | ||
- Magisk: delay startup if /data not available | ||
- Fix script uninstall not working | ||
- Use librootjava's Daemon mode | ||
|
||
2019-03-13 - v1.81 | ||
- (c) 2019 | ||
- Fix script reinstalling every launch | ||
- Fix display not working on some Pie ROMs | ||
- Fix test run not working on some devices | ||
|
||
2019-12-31 - v1.83 | ||
- Android 10 | ||
|
||
2020-12-21 - v1.84 | ||
- Android 11 | ||
- Removed links to Google Plus | ||
- (c) 2020 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
android.enableJetifier=true | ||
android.useAndroidX=true |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
#Mon Dec 21 16:40:30 CET 2020 | ||
distributionBase=GRADLE_USER_HOME | ||
distributionPath=wrapper/dists | ||
zipStoreBase=GRADLE_USER_HOME | ||
zipStorePath=wrapper/dists | ||
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,164 @@ | ||
#!/usr/bin/env bash | ||
|
||
############################################################################## | ||
## | ||
## Gradle start up script for UN*X | ||
## | ||
############################################################################## | ||
|
||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||
DEFAULT_JVM_OPTS="" | ||
|
||
APP_NAME="Gradle" | ||
APP_BASE_NAME=`basename "$0"` | ||
|
||
# Use the maximum available, or set MAX_FD != -1 to use that value. | ||
MAX_FD="maximum" | ||
|
||
warn ( ) { | ||
echo "$*" | ||
} | ||
|
||
die ( ) { | ||
echo | ||
echo "$*" | ||
echo | ||
exit 1 | ||
} | ||
|
||
# OS specific support (must be 'true' or 'false'). | ||
cygwin=false | ||
msys=false | ||
darwin=false | ||
case "`uname`" in | ||
CYGWIN* ) | ||
cygwin=true | ||
;; | ||
Darwin* ) | ||
darwin=true | ||
;; | ||
MINGW* ) | ||
msys=true | ||
;; | ||
esac | ||
|
||
# For Cygwin, ensure paths are in UNIX format before anything is touched. | ||
if $cygwin ; then | ||
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` | ||
fi | ||
|
||
# Attempt to set APP_HOME | ||
# Resolve links: $0 may be a link | ||
PRG="$0" | ||
# Need this for relative symlinks. | ||
while [ -h "$PRG" ] ; do | ||
ls=`ls -ld "$PRG"` | ||
link=`expr "$ls" : '.*-> \(.*\)$'` | ||
if expr "$link" : '/.*' > /dev/null; then | ||
PRG="$link" | ||
else | ||
PRG=`dirname "$PRG"`"/$link" | ||
fi | ||
done | ||
SAVED="`pwd`" | ||
cd "`dirname \"$PRG\"`/" >&- | ||
APP_HOME="`pwd -P`" | ||
cd "$SAVED" >&- | ||
|
||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar | ||
|
||
# Determine the Java command to use to start the JVM. | ||
if [ -n "$JAVA_HOME" ] ; then | ||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then | ||
# IBM's JDK on AIX uses strange locations for the executables | ||
JAVACMD="$JAVA_HOME/jre/sh/java" | ||
else | ||
JAVACMD="$JAVA_HOME/bin/java" | ||
fi | ||
if [ ! -x "$JAVACMD" ] ; then | ||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME | ||
Please set the JAVA_HOME variable in your environment to match the | ||
location of your Java installation." | ||
fi | ||
else | ||
JAVACMD="java" | ||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||
Please set the JAVA_HOME variable in your environment to match the | ||
location of your Java installation." | ||
fi | ||
|
||
# Increase the maximum file descriptors if we can. | ||
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then | ||
MAX_FD_LIMIT=`ulimit -H -n` | ||
if [ $? -eq 0 ] ; then | ||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then | ||
MAX_FD="$MAX_FD_LIMIT" | ||
fi | ||
ulimit -n $MAX_FD | ||
if [ $? -ne 0 ] ; then | ||
warn "Could not set maximum file descriptor limit: $MAX_FD" | ||
fi | ||
else | ||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" | ||
fi | ||
fi | ||
|
||
# For Darwin, add options to specify how the application appears in the dock | ||
if $darwin; then | ||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" | ||
fi | ||
|
||
# For Cygwin, switch paths to Windows format before running java | ||
if $cygwin ; then | ||
APP_HOME=`cygpath --path --mixed "$APP_HOME"` | ||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` | ||
|
||
# We build the pattern for arguments to be converted via cygpath | ||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` | ||
SEP="" | ||
for dir in $ROOTDIRSRAW ; do | ||
ROOTDIRS="$ROOTDIRS$SEP$dir" | ||
SEP="|" | ||
done | ||
OURCYGPATTERN="(^($ROOTDIRS))" | ||
# Add a user-defined pattern to the cygpath arguments | ||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then | ||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" | ||
fi | ||
# Now convert the arguments - kludge to limit ourselves to /bin/sh | ||
i=0 | ||
for arg in "$@" ; do | ||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` | ||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option | ||
|
||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition | ||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` | ||
else | ||
eval `echo args$i`="\"$arg\"" | ||
fi | ||
i=$((i+1)) | ||
done | ||
case $i in | ||
(0) set -- ;; | ||
(1) set -- "$args0" ;; | ||
(2) set -- "$args0" "$args1" ;; | ||
(3) set -- "$args0" "$args1" "$args2" ;; | ||
(4) set -- "$args0" "$args1" "$args2" "$args3" ;; | ||
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; | ||
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; | ||
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; | ||
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; | ||
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; | ||
esac | ||
fi | ||
|
||
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules | ||
function splitJvmOpts() { | ||
JVM_OPTS=("$@") | ||
} | ||
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS | ||
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" | ||
|
||
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" |
Oops, something went wrong.