An android app which uses Google ARCore to allow user to paint on a camera feed. You can try out the app by downloading the APK from here 🚀.
- Draw anywhere on the canvas. The canvas being the camera feed 📷
- Change line thickness 📏
- Change line color 🎨
- Clear the entire screen ✏️
- Undo last move
◀️
Disclaimer: Do not mind the drawings in the screenshots, I'm not good at drawing.
Before you begin, you should have already downloaded the Android Studio SDK and set it up correctly. You can find a guide on how to do this here: Setting up Android Studio
-
Download the project source. You can do this either by forking and cloning the repository (recommended if you plan on pushing changes) or by downloading it as a ZIP file and extracting it.
-
Install the NDK in Android Studio.
-
Open Android Studio, you will see a Welcome to Android window. Under Quick Start, select Import Project (Eclipse ADT, Gradle, etc.)
-
Navigate to the directory where you saved the ARPaint project, select the root folder of the project (the folder named "ARPaint"), and hit OK. Android Studio should now begin building the project with Gradle.
-
Once this process is complete and Android Studio opens, check the Console for any build errors.
- Note: If you receive a Gradle sync error titled, "failed to find ...", you should click on the link below the error message (if available) that says Install missing platform(s) and sync project and allow Android studio to fetch you what is missing.
-
You will also need to setup Android NDK. If a build error due to NDK persists, try replacing ndk with ndk version 20 from ndk-archives. Once all build errors have been resolved, you should be all set to build the app and test it.
-
To Build the app, go to Build > Make Project (or alternatively press the Make Project icon in the toolbar).
-
If the app was built successfully, you can test it by running it on either a real device or an emulated one by going to Run > Run 'app' or pressing the Run icon in the toolbar.
Here are a few resources you can use to learn about ARCore: