A mod of the Twitch Android Mobile1 App adding BetterTTV, FrankerFaceZ and 7TV emotes
This project is not affiliated to Twitch Interactive Inc, NightBot LLC, Dan Salvato LLC or the SevenTV project! THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND!
You can help this project by contributing translations on crowdin.
- BTTV, FFZ and 7TV Emotes
- Auto-Claim Bonus Channel Points
- Auto Updater
- Sleep Timer
- Highlight Keywords
- Split Chat
- Anon Chat
-
Amazon Video Watch Parties require the Twitch App to be installed on the device and the optional step in the install instructions below
-
Animated Emotes occasionally glitch on some devices
-
7TV's zero width emotes are not supported right now
-
Personal Emotes are not supported for now
-
Users have reported that notifications are not working for them. To fix this go to "App-Info -> Open Supported Apps" and select "Only in this application".
-
bttv-android will not work on Android TVs as it is a mod of the Twitch mobile App and not of the Twitch Andorid TV App. You can install it, just do not expect a good experience
- Skim through this guide on how to enable third party app istallations
- Go to the latest release page and download the
.apk
file of the mod. It periodically checks for new releases so you only have to download it once from there. - (Optional) Prevent Twitch from opening when you interact with twitch.tv links: Long-press on the Twitch App -> "App Info" -> "Advanced" -> "Open by default" -> "Open supported links" -> "Ask every time" (might vary depending on OEM)
This patch is meant to be applied to version 19.0.1 of the official twitch app Make sure you use this version before you create an issue!
Docker
-
Clone this repo
-
Get the Twitch App's apk files (e.g from here, or here)
Please make sure you get it from a non-shady source!
If you have downloaded a single
.apk
file, name ittwitch.apk
If you have downloaded a bundle of
.apk
files put them in a.zip
archive and name ittwitch.zip
Note: Apkmirror publishes bundles as
.apkm
files, those are justzip
files, so rename them totwitch.zip
-
Run the builder:
docker run --rm -ti \ -v path/to/twitch.apk:/usr/build/twitch.apk \ -v /path/to/dist:/usr/build/dist \ -v path/to/patches:/usr/build/patches \ -v /path/to/mod:/usr/build/mod \ -v /path/to/.all-contributorsrc:/usr/build/.all-contributorsrc \ -v /path/to/bttv.manifest.json:/usr/build/bttv.manifest.json \ ghcr.io/bttv-android/builder
If you are in the same directory as the apk file you can copy and paste:
docker run --rm -ti \ -v $(pwd)/twitch.apk:/usr/build/twitch.apk \ -v $(pwd)/.bttv-cache:/usr/build/.bttv-cache \ -v $(pwd)/dist:/usr/build/dist \ -v $(pwd)/patches:/usr/build/patches \ -v $(pwd)/mod:/usr/build/mod \ -v $(pwd)/.all-contributorsrc:/usr/build/.all-contributorsrc \ -v $(pwd)/bttv.manifest.json:/usr/build/bttv.manifest.json \ ghcr.io/bttv-android/builder
-
The
dist
directory will contain the patched apk file! -
Transfer to device and install apk
-
Remove the builder again:
docker rmi ghcr.io/bttv-android/builder
Tool | Env variable | Default |
---|---|---|
Bash | Has to be in /bin | |
Git | Has to be in PATH | |
Java JDK | JAVA_PATH and JAVAC_PATH | java and javac (from PATH) |
jq | Has to be in PATH | |
Android SDK or install using Android Studio | BUILDTOOLS_PATH | ~/Android/Sdk |
ApkTool | APKTOOL_PATH | /opt/apktool/apktool.jar |
Uber APK Signer | UBER_APK_SIGNER_PATH | /opt/uber-apk-signer/uber-apk-signer-1.2.1.jar |
Baksmali | BAKSMALI_PATH | /opt/baksmali/baksmali-2.4.0.jar |
build-companion | BUILD_COMPANION | /opt/build-companion |
If you get stuck at any point, just remove the
disass
dir and try again
- Download and install prerequisites
- Get the Twitch App's apk files (e.g from here), drop them zipped in this directory and call it "twitch.zip"
Please make sure you get it from a non-shady source! If you have adb installed follow this guide (Method 3)
- The
./initworkspace
script will disassemble the apks, build the sources, apply monkey patches and build the new apk for you - Transfer to device and install apk
(Adb installed and device connected? Try the :
./install
script)
This repo is mirrored on Gitlab.
Made with
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!