Educational application written in Kotlin aimed at automating user-defined workflows for the mobile game, "Granblue Fantasy", using MediaProjection, AccessibilityService, and OpenCV.
Discord here: https://discord.gg/5Yv4kqjAbm
Python version here: https://github.com/steve1316/granblue-automation-pyautogui
Checkout Granblue Automation Statistics and its project over at https://github.com/steve1316/granblue-automation-statistics
This Android application written in Kotlin and UI in React Native is designed for educational research purposes on studying the Android architecture and using system services such as MediaProjection and AccessibilityService in conjunction with OpenCV to automate certain workflows via image template matching.
Screenshots are taken via the MediaProjection and OpenCV performs image processing. Gestures are performed by AccessibilityService in order to perform various actions such as tapping, swiping or scrolling the screen.
By downloading this application, you consent to your account potentially getting flagged for excessive usage and banned by KMR. I hold no responsibility for how much you use this application for. I trust you have the self-control necessary to use this application in reasonable bursts of time and to give yourself breaks in between.
Releases
section on the right and install it on your Android device. If you want to build the .apk yourself, do the following:
https://opencv.org/releases/
and download OpenCV 4.5.1 (make sure to download the Android version of OpenCV) and extract it.android
folder named opencv
and copy the extracted files in /OpenCV-android-sdk/sdk/
from Step 2 into it.yarn install
in the root of the project folder as well.universalApk
to true
in the build.gradle
for the application to build a one-for-all .apk file or adjust the include
to customize which ABI(s) to build the .apk file for.Settings
page to fill out the necessary sections. Additional settings may be found in the Extra Settings
page.Start
button back in the Home
page. If this is the first time, it will ask you to give the application Overlay
permission and then to enable its Accessibility Service
.Start
button again will display an overlay button that you can move around the screen.Back
button to avoid interruption.Stop
button back in the Home
page or tapping the Stop
button on the application's notification.files
folder located inside internal storage's Android/data/com.steve1316.granblue_automation_android/
directory.settings.json
file. For ease of use, send it to your computer.settings.json
using your preferred text editor. After that, move the file back to where it belonged on your Android device.